この言葉自体は私の造語(?)なので。。。
具体的に言えば、フレームの中のページに直接アクセスされるとフレームを付け加える機能です。
私は、このサイトの前身である no title - your web partner - ではフレーム構成にしてました。
そこで私が一番嫌に思ったのは、アクセス自体はフレームの中のページからなので、リンク等を張られる際もトップではないURLになるんです。 それを解消するため、フレーム内に直接アクセスした場合はフレームを合成するようにしました。
→ サンプル (javascript有効じゃなきゃ動きません)
このように、勝手にフレーム化されてしまいます。
それがこのスクリプトのいいところです。
こうすることにより、管理側にとって満足できるようなデザインやアクセスビリティーで表示されます。
フレームページ
・メインのフレームの部分のタグを<noscript>〜</noscript>で挟む。
例)
<script type="text/javascript" language="javascript">
<!--
check();
-->
</script>
<noscript><iframe src="フレームファイル" name="フレーム名"></iframe></noscript>
・<head>内に下記を記述する
<script language="javascript" type="text/javascript" src="パス/frame.js"></script>
外部ファイル(frame.js)
function check(){
var gurl = location.search;
if(gurl == ""){url = "フレームの中身のURL";}
else{url = gurl.slice(1);}
document.write("<iframe src='"+url+"'></iframe>");
/*注意: ↑の<iframe>のタグは自分のフレーム形態によって中身変更してね*/
}
外部ファイル(framecheck.js)
function check(){
var furl = parent.location.href;
var murl = location.href;
if(furl == murl)
{
url = furl.replace("サイトURL","");
window.open("フレームページURL?"+url,"_parent","width=100%, height=100%");
}
}
フレーム内で表示されるページ全てのファイルの<head>内に書き込む
<script language="javascript" type="text/javascript" src="パス/framecheck.js"></script>
<script type="text/javascript" language="javascript">
<!--
check();
-->
</script>
・メインのフレームの部分のタグを<noscript>〜</noscript>で挟む。
例)
<script type="text/javascript" language="javascript">
<!--
check();
-->
</script>
<noscript><iframe src="フレームファイル" name="フレーム名"></iframe></noscript>
・<head>内に下記を記述する
<script language="javascript" type="text/javascript" src="パス/frame.js"></script>
外部ファイル(frame.js)
function check(){
var gurl = location.search;
if(gurl == ""){url = "フレームの中身のURL";}
else{url = gurl.slice(1);}
document.write("<iframe src='"+url+"'></iframe>");
/*注意: ↑の<iframe>のタグは自分のフレーム形態によって中身変更してね*/
}
外部ファイル(framecheck.js)
function check(){
var furl = parent.location.href;
var murl = location.href;
if(furl == murl)
{
url = furl.replace("サイトURL","");
window.open("フレームページURL?"+url,"_parent","width=100%, height=100%");
}
}
フレーム内で表示されるページ全てのファイルの<head>内に書き込む
<script language="javascript" type="text/javascript" src="パス/framecheck.js"></script>
<script type="text/javascript" language="javascript">
<!--
check();
-->
</script>
多分、すっごく分かりづらいと思います。
パスの部分に関しては アドレス指定方法参照
この文章見てもよくわからねぇ〜〜〜って方はサンプル
(うちのサイトをフレーム構成だと想定しての作成です)
フレームサンプル ソース
フレーム内サンプル ソース
frame.jsソースサンプル
framecheck .jsソースサンプル