無料ブログ「rentafree.net」の管理人ブログ

表示確認ダイアログを表示するプラグインを作りました。

ページを表示する前にメッセージと「はい」「いいえ」の確認ダイアログ(JavaScriptのconfirm)を表示し、
「いいえ」ならページを表示せずにサービストップページへ転送するプラグインを作りました。

18禁ブログの場合、年齢確認のクッションページを表示したい場合があると思いますが、
クッションページを表示するような機能はないので、
ダイアログにより確認機能を簡単に実装できるようにしました。

メッセージは変更できるので、
18禁の年齢確認以外にも使えます。

表示確認ダイアログ

ページを表示する前にメッセージと「はい」「いいえ」の確認ダイアログ(JavaScriptのconfirm)を表示し、
「いいえ」ならページを表示せずにサービストップページへ転送します。

設定項目
メッセージ 警告文章の設定

メッセージは、初期状態又は空の場合、
>18歳未満閲覧禁止のページを表示しようとしています。
>18歳以上ですか?
です。

ダイアログは、リファラー(リンク元URL)チェックにより、
  • 同一ドメインからのリンク
  • リファラーなし
の場合には表示されません。

「はい」を選択した場合はクッキーに記憶し、以降メッセージは出ません。
クッキーの有効期限はブラウザを閉じるまでです。

このプラグインは、
位置=0 (<head>)
に追加されます。

Safariも対応しました

Windows版のSafariって物があるのを知ったんで、Safariもテストしました。

Chromeと同じKHTMLだから不具合あるかもと思ったんですが、同じ不具合ありました。
対応しました。

どうも、
KHTMLだとeventが二重に発生して、
二重に発生すると期待する動作をしなかったみたい。

Google Chrome対応できました

テキストエディタのGoogle Chrome対応できました。

ブラウザ判別してmouseupイベントをなしにすれば問題回避できた。
Chromeは右ボタン押したときじゃなくて離したときにコンテキストメニューが開くからかな?
思ったけど、他のブラウザ試してみると、Windowsは全部離したときにメニュー出るらしい・・・
やっぱChromeの挙動おかしい・・・
内部のプロパティと表面に違いが出たりするし・・・

WEB開発者の難敵のIE6のシェアが減ってきたところにまたバグブラウザが普及してきてマジ困る・・・

Konquerorはコンテキストメニュー使えないぽいから、
コンテキストイベントはGoogleの独自実装なのかな?
そこらが変なのかもしれない。

ちなみに、
Konquerorは右クリックメニューが出てこないようなんで、
エディター非対応。

テキストエディタ修正

エディタのポップアップする要素が、
他の要素より後ろに表示されてしまう箇所があったので修正しました。


あと、
Google Chromeで不具合があることに気づいたので修正を試みたんですが、
ブラウザのバグがひどすぎて対応できないと判断しました。
Google Chromeは非対応とします。


推薦ブラウザ
Firefox 3.6

動作確認ブラウザ
Firefox 3.6
IE 8.0
Opera 10

IE7以上、Firefox3.0以上で多分平気。

検索:検索結果

検索結果ページの際に、
「検索文字列」での検索結果 20件中 1 - 10 件目
の様に表示するプラグインです。

設定項目はありません。


このプラグインは検索結果ページでのみ表示されます。

このプラグインは、
位置=3 (中央上部)
に追加されます。


検索:ハイライト

検索結果ページの際に、検索文字列を<mark>でハイライト表示(強調表示)するプラグインです。

設定項目はありません。

このプラグインは検索結果ページでのみ表示されます。

このプラグインは、
位置=0 (<head>)
に追加されます。

<mark>に対応していないブラウザではハイライトされません。

カレンダープラグイン更新

稀にインライン表示(一列表示)でブログ上部(ヘッダー下)にカレンダーを表示しているブログを見かけますんで、
真似して、カレンダープラグインの設定で「インライン」設定をするとカレンダーを一列表示にできるようにしました。

ただ、
公式テンプレートにはヘッダー下に表示するサイドバーがないので、
近い位置だと、「位置=3」の中央上部ですが、
中央上部だと31日を一列表示するとちょい狭すぎな感じです。(たぶん2段に落ちちゃいます。)

公式テンプレートにヘッダー下サイドバーを作ろうかとも思いましたが、
変わったデザインのブログを作る人は自分でテンプレートカスタマイズするだろうと思うんでヤメました。


あと、月別表示の場合、カレンダーはその月の表示になるはずでしたが、
バグで最新月のままになっていたので修正しました。