ブックマークレットは、clientutils.jsへのリンクをドキュメントの最後に追加するJavaScriptコードの小さなスニペットを実行するだけです。その後、50ミリ秒ごとに無名関数を実行して、スクリプトが読み込まれたかどうか(およびClientUtils
関数が使用可能になったかどうか)を確認します。ロードされた場合は、関数の実行を停止して作成window.__utils__
し、コンソールで使用できるようにします。これが、より読みやすい形式の実際のブックマークレットコードです。理解するのはかなり簡単なはずです:
(function () {
void(function () {
if (!document.getElementById('CasperUtils')) {
var CasperUtils = document.createElement('script');
CasperUtils.id = 'CasperUtils';
CasperUtils.src = 'https://raw.github.com/n1k0/casperjs/master/modules/clientutils.js';
document.documentElement.appendChild(CasperUtils);
var interval = setInterval(function () {
if (typeof ClientUtils === 'function') {
window.__utils__ = new window.ClientUtils();
clearInterval(interval);
}
}, 50);
}
}());
})();