我有一个jquery对话框,我想将css top的值更改为50px。我有一个打开对话框的链接,onclick调用一个js函数,该函数应该更改对话框的顶部值,然后更改内部html,然后打开对话框。
HTML:
<a onclick="linkClicked(); $('#myDialog').html('Loading...'); $('#myDialog').dialog('open'); return false;" href="#">Click Me</a>
<div id="myDialog" title="Basic dialog">
<p>Test.</p>
</div>
<script>
$(function() {
$( "#myDialog" ).dialog({
autoOpen: false,
});
});
</script>
JS:
function linkClicked() {
$("#myDialog").parent().css({'top': '50px'});
console.log($("#myDialog").parent());
}
这是我的jsfiddle:
https://jsfiddle.net/kgjes8xs/
我的问题再次是如何从js函数更改对话框的顶部样式值?
感谢您的帮助!
答案 0 :(得分:1)
将函数移动到onClick的末尾,如此
<a onclick="$('#myDialog').html('Loading...'); $('#myDialog').dialog('open'); linkClicked();return false;" href="#">Click Me</a>
我在小提琴上试过这个并且它运行正常,逻辑上你必须在对话框打开后运行定位。