一度見たFlashを見せない方法 2
1年以上前の記事です。内容が古い可能性があります。
□一度見たFlashを見せない方法 (2007年11月4日)
ただし、この方法でもブラウザについている戻るボタンを押されたら元も子もないのですが。
ということもあって、
結局リファラでの制御はやめてクッキーを使ってFLASHを制御することにしました。
以下、それに関してのスクリプト及び覚書です。
まず、トップページ(index.html)の最後のほうに以下のスクリプトAを書きます。
document.cookie = "visiting";
(Javascriptです。コメントアウトやscriptタグは省略しています)
</body>の前あたりがいいと思います。
これで、該当ページのクッキーの先頭にvisitingが書き込まれます。
さらに、FLASH読み込み部分のスクリプトも書き換えます。
ゼロから作るのはめんどくさいのでリファラ制御のときのスクリプトを拝借してちょっと修正。
■元スクリプト
ref = document.referrer;
if(ref.match(/domein/)!="domein"){
writeFlash('_swf=Flash[A].swf','_width=800','_height=400')
}else{
writeFlash('_swf=Flash[B].swf','_width=800','_height=400')
}
1行目の「ref = document.referrer;」を「cook = document.cookie;」に書き換えて、
今までリファラを取得していた部分をクッキーに変えます。さらに、
2行目の「ref.match(/domein/)!=”domein”」を「cook.match(/visiting/)!=”visiting”」に変えて、
クッキー内に「visiting」という文字列があるかないかで振り分けます。
■完成スクリプトB
cook = document.cookie;
if(cook.match(/visiting/)!="visiting"){
writeFlash('_swf=Flash[A].swf','_width=800','_height=400')
}else{
writeFlash('_swf=Flash[B].swf','_width=800','_height=400')
}
フラッシュ表示用のスクリプトBとクッキー書き込み用のスクリプトAが逆にならないようにしてください。
逆にしちゃうと常にオープニングフラッシュが表示されなくなってしまいます。
ちなみに、この方法だとブラウザを閉じない限りオープニングフラッシュは表示されません。
ただ、safariでは動作しなかった(クッキーの仕組みが微妙に違う?)ので、
リファラ制御とあわせて使うといいかもしれません。
■最終形スクリプト
ref = document.referrer; cook = document.cookie;
if(ref.match(/domein/)!="domein" && cook.match(/visiting/)!="visiting"){
writeFlash('_swf=Flash[A].swf','_width=800','_height=400')
}else{
writeFlash('_swf=Flash[B].swf','_width=800','_height=400')
}
が、しかし、これでもSafariはダメでした。
あとはif文を入れ子にする方法もあるけどめんどくさいので保留です。
アドセンス広告メイン
関連記事
-
脱獄なしiPhoneでテザリングができるアプリ「PayUpPunk」
1年以上前の記事です。内容が古い可能性があります。なんと、脱獄(JailBrea …
-
携帯サイトでこれだけはやっておきたいこと
1年以上前の記事です。内容が古い可能性があります。携帯サイトを作るうえで最低限こ …
-
横になりながらネットブックをいじっていたらiPadが欲しくなった
1年以上前の記事です。内容が古い可能性があります。ネットブックはベッドで横になり …
-
「iOS5」にしたら何にでも絵文字がつかえるようになった【iPhone】
1年以上前の記事です。内容が古い可能性があります。まだまだ続く「iOS 5」にし …
-
「」()→↓←↑をiPhoneで簡単に入力、変換。辞書登録を使った画期的な方法とは
1年以上前の記事です。内容が古い可能性があります。なんか、iPhoneでカギカッ …
-
「ツイッターでブロックされるとこうなる」をまた確認してみた
1年以上前の記事です。内容が古い可能性があります。度々ブロックの仕様が変わるツイ …
-
「iOS 7」にもパスコードロック回避(解除)の裏ワザ(バグ)があった【iPhone】
1年以上前の記事です。内容が古い可能性があります。もう、度々ロック回避(解除)の …
-
Facebookページを持っている人はコールトゥアクション(CTA)を設定しておきましょう
1年以上前の記事です。内容が古い可能性があります。Facebookページに問い合 …
-
meta refreshを使わずに自動でリンクに飛ばす方法
1年以上前の記事です。内容が古い可能性があります。CGIスクリプトの仕様で、1つ …
-
ツイッター(Twitter)だけで様々なSNSを操作できる「CtrlTwit」
1年以上前の記事です。内容が古い可能性があります。おそらく、自分の中で今のところ …
- PREV
- 明らかにテレビの見方が変わってきてます
- NEXT
- トヨタはブラック企業なのか?