Je suis en train d'obtenir un très basique et simple dialogue dans mon Javascript, en fait je suis en train de reproduire quelque chose de très similaire à cet exemple de site jQueryUI:Comment répliquer la fonctionnalité de dialogue de jQuery UI dans Jetpack?
<script type="text/javascript">
$(function() {
$("#dialog").dialog({
bgiframe: true,
height: 140,
modal: true
});
});
</script>
<div class="demo">
<div id="dialog" title="Basic modal dialog">
<p>Adding the modal overlay screen makes the dialog look more prominent because it dims out the page content.</p>
</div>
...
En Pour y parvenir, j'exécute une fonction testJQ mais je n'arrive pas à obtenir l'effet désiré. Le div et son p interne est ajouté et je peux voir le contenu de p mais je ne peux pas voir "Basic dialogue modal" et je ne peux pas le déplacer autour de la page. Est-ce que je manque quelque chose? Voici mon code:
function testJQ() {
var doc = jetpack.tabs.focused.contentDocument;
var win = jetpack.tabs.focused.contentWindow;
$.get("http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js",
function(js) {
var script = doc.createElement("script");
script.innerHTML = js;
doc.body.appendChild(script);
$.get("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js",
function(js) {
var script = doc.createElement("script");
script.innerHTML = js;
doc.body.appendChild(script);
$.get("http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/ui-lightness/jquery-ui.css",
function(js) {
var style = doc.createElement("style");
style.innerHTML = js;
doc.getElementsByTagName('HEAD')[0].appendChild(style);
var script = doc.createElement("script");
script.innerHTML = js;
doc.body.appendChild(script);
script = doc.createElement("script");
script.innerHTML += '$(function() {';
script.innerHTML += '$("#dialog").dialog({'
script.innerHTML += ' bgiframe: true, height: 140, modal: true';
script.innerHTML += ' });';
script.innerHTML += '});';
doc.body.appendChild(script);
divDialog = doc.createElement("div");
divDialog.setAttribute('id', 'dialog');
divDialog.setAttribute('title', 'Basic Dialog');
divDialog.innerHTML = '<p>This is the default dialog which is useful
for displaying information. The dialog window can be moved, resized
and closed with the X icon.</p>';
doc.body.appendChild(divDialog);
});
});
});
}
J'ai changé l'ordre de insère, maintenant j'insère divDialog, doc.body.appendChild (divDialog); puis en créant l'élément script et insérez-le doc.body.appendChild (script); Cependant, les effets visibles sont les mêmes. Je vois juste le contenu de l'élément p, je ne vois pas le titre de la boîte de dialogue ou je ne peux pas le faire glisser. En outre, Firebug se plaint d'erreur de syntaxe: .ui-helper-hidden {display: none;} \ n " En ce qui concerne vos inquiétudes concernant l'installation de jquery, ui et la vérification de l'élémement avec des identifiants déjà nommés" dialog ", je suis conscient des risques et je prendrai les précautions nécessaires une fois que je pourrai faire marcher ça. –
Vous avez écrit le contenu CSS destiné à l'élément '