Как загрузить внешние css, js и добавить div в DOM из букмарклета?

Я пытаюсь создать букмарклет, который делает следующее:

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, в свою очередь, загружает jquery и jquery ui, чем добавляет div в текущий DOM сайта. (не могу заставить это работать)

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);
});

Проблема, с которой я сталкиваюсь, заключается в том, что я не могу добавить div с определенным идентификатором. Идея состоит в том, чтобы использовать функцию dialog() jqueryui, чтобы на любом сайте, на котором я использую букмарклет, отображалось подвижное диалоговое окно с изменяемым размером. .

$("#dialog").dialog(); 

Как вы можете себе представить, мне нужно загрузить свой контент в определенный div, чтобы не испортить дизайн сайта, на который был загружен букмарклет.

3.) Только что открывшееся диалоговое окно содержит содержимое удаленного php-файла, который в основном анализирует страницу.

Сценарий готов, мне просто нужно, чтобы он загружался в диалоговое окно, которое я пытаюсь создать.

Пожалуйста, помогите, так как я действительно застрял с этим! Спасибо.


person Carvefx    schedule 21.12.2009    source источник


Ответы (1)


Это помогает? Это та часть, которая доставляет вам проблемы?

$("<div id='id'></div>").html("Loading......");

Документы jQuery говорят:

Весь HTML должен быть правильно сформирован, иначе он может работать некорректно во всех браузерах. Это включает случай, когда $("<span>") может не работать, но $("<span/>") будет (обратите внимание на закрывающую косую черту в стиле XML).

person Victor    schedule 21.12.2009
comment
Спасибо, Виктор, я только что разобрался с этой частью. Я загрузил div в свой контент и теперь пытаюсь заставить его запустить удаленный php-скрипт. - person Carvefx; 21.12.2009
comment
Прохладный! Кроме того, если под запуском удаленного PHP-скрипта вы подразумеваете, что хотите сделать междоменный вызов Ajax, вы столкнетесь с проблемами. Вам нужно будет вызвать его также из тега <script>, чтобы обойти междоменную политику. Просто говорю'! - person Victor; 21.12.2009
comment
Спасибо, Виктор, вы очень помогли. - person Carvefx; 21.12.2009