私の解決策:バックグラウンドで実行され、通知をトリガーする chrome 拡張機能を作成しました。それを行うにはクロムが必要なため、範囲が少し制限されていますが、必要なことは実行します。私が取り組んでいる問題の目的のために、ユーザーグループにクロムを使用させることができます;D
詳細: 拡張機能には、マニフェストとスクリプトの 2 つのコンポーネントしかありません。現在、一致識別子を使用して自分のサイトでのみ機能するようにマニフェストをセットアップしています...そして、通知を含めるように権限を設定しています。
JS スクリプトには、ページ内で id を持つ要素を探す window.setinterval がありますNOTIFIER
。空の場合は何もしません。それ以外の場合は、コンテンツに基づいて通知を作成し、コンテンツをクリアして、同じ通知が複数回表示されないようにします...(.onchange
その要素に使用しようとしましたが、イベントをトリガーできませんでした... setInterval ではなくイベントでこれを行うことをお勧めします)
Notify.js
function onExtLoad() {
var timer = setInterval(refresh,1000);
}
document.addEventListener('DOMContentLoaded', onExtLoad());
function refresh() {
if (document.getElementById('NOTIFIER').innerHTML == "") {
//do nothing?
} else {
var notification = webkitNotifications.createNotification("",
"You got a new message",
document.getElementById('NOTIFIER').innerHTML);
notification.show();
document.getElementById('NOTIFIER').innerHTML = "";
}
}
次に、NOTIFIER と出来上がりに情報を追加するときに、ページ コントロールに JS を配置するだけです。通知!
これが他の誰かに役立つことを願っています。
@ExpertSystem: MutationObserver をいじりましたが、一度しかトリガーできません。
ここにJSFiddle があります: http://jsfiddle.net/BTX8x/1/ リセットする方法はありますか?
編集: それを理解しました、私は必要でしたsubtree:true