2012-06-18 37 views
0

我把它们都放在一个页面,它应该工作和不工作:为什么简单的JQuery对话框/弹出不起作用?

<html> 
<head> <link href="css_js/styles.css" rel="stylesheet" type="text/css"> 
    <script language="JavaScript1.2" src="css_js/jquery-1.7.1.min.js" type="text/javascript"></script> 
    <script language="JavaScript1.2" src="css_js/jquery-ui-1.8.17.custom.min.js" type="text/javascript"></script> 
    <script language="JavaScript1.2" type="text/javascript"> 
function popup() { 
    alert('test'); 
    var popup = $('.newpopup'); 
    popup.draggable(); 
    popup.resizable(); 
    popup.html('<p>Where is pancakes house?</p>'); 
    popup.show('fast'); 
} 
$('button').click(popup); 
    </script> 
</head> 
<body> 
<div class='newpopup'></div> 
<button>popup</button> 
</body> 
</html> 

我想要使用jQuery一个简单的弹出/对话,但它是不工作的。它有什么问题?

+0

什么“不工作”? – jbrtrnd

+0

删除'language'属性。 – undefined

+0

是'$('button')'有效的触发器使用? – Chris

回答

5

呼吁document.ready

$(document).ready(function(){ 
    $('button').click(function(){ 
    popup(); 
    }); 
}) 

OR

$(function(){ 
    $('button').click(function(){ 
    popup(); 
    }); 
}) 
+0

谢谢。这工作。现在我只需要定位弹出窗口并对其进行重新编码,以便它可以在同一页面上使用多个弹出窗口。任何想法如何做到这一点? –

+0

@NickRosencrantz创建该函数的插件并将其应用于多个元素 - http://docs.jquery.com/Plugins/Authoring – Dipak

0

您应该运行在jQuery的风格的函数:

$('button').click(function() { 
    popup(); 
    return false; //optional 
} 
+0

这不是必需的。 – Sarke

0

功能是否确定src引用是有效的,当你'包括jquery?我已经使用Google托管版本的JQuery和JQuery-ui获得了代码working fine on this jsfiddle

+1

jsfiddle将js放入一个窗口加载事件中,这就是为什么它在那里工作,但不是为他工作。 – Sarke

+0

啊,好的 - 我没有意识到。谢谢。 –