次のことを行うブックマークレットを構築しようとしています:
1.)サーバーにある外部jsをロードします(完了)
javascript:function%20loadScript(scriptURL)%20{%20var%20scriptElem%20=%20document.createElement('SCRIPT');%20scriptElem.setAttribute('language',%20'JavaScript');%20scriptElem.setAttribute('src',%20scriptURL);%20document.body.appendChild(scriptElem);}%20loadScript('http://127.0.0.1/main.js?x='+Math.random());
2.) この外部 JavaScript は、現在のサイト DOM に div を追加するよりも、jquery と jquery ui をロードします。(これを機能させることはできません)
function loadScripts(scriptURL) {
var scriptElem = document.createElement('SCRIPT');
scriptElem.setAttribute('language', 'JavaScript');
scriptElem.setAttribute('src', scriptURL);
void(document.body.appendChild(scriptElem));
}
loadScripts('http://127.0.0.1/js/jquery-1.3.2.min.js');
loadScripts('http://127.0.0.1/js/jquery-ui-1.7.2.custom.min.js');
var head = document.getElementsByTagName('head')[0];
$(document.createElement('link')).attr({type: 'text/css', href: 'http://127.0.0.1/css/redmond/jquery-ui-1.7.2.custom.css', rel: 'stylesheet'}).appendTo(head);
$(document).ready(function(){
div = $("<div>").html("Loading......");
$("body").prepend(div);
});
私が抱えている問題は、特定の id を持つ div を追加できないことです。アイデアは、jqueryui の dialog() 関数を使用して、ブックマークレットを使用するサイトにサイズ変更可能で移動可能なダイアログ ボックスを表示することです。 .
$("#dialog").dialog();
ご想像のとおり、ブックマークレットが読み込まれたサイトのデザインを台無しにしないように、コンテンツを特定の div に読み込む必要があります。
3.) 開いたばかりのダイアログには、基本的にページを解析するリモート php ファイルの内容が含まれています。
スクリプトが完成しました。作成しようとしているダイアログにロードする必要があるだけです。
私は本当にこれで立ち往生しているので助けてください!ありがとう。