0

我正在尝试使用 Jquery 制作一个可拖动的弹出窗口,并且我正在遵循我在这里得到的建议。 使用 JQuery 进行弹出窗口/对话框的最佳方式? 但它根本不起作用。

的HTML

<body id="content" onload="if(document.getElementById('beroende') != null) { ingVar(document.getElementById('beroende').value); }">
<div class='newpopup'></div>

CSS

.newpopup 
{
    display:none;
    position:absolute;
} 

Javascript

    function popup(){
    // for the draggable you may want to specify the drag handle like only the title of the popup
    alert('i popup');
    var popup = $('.newpopup');

    popup.draggable();
    popup.resizable();

    $.get('/PandoraArendeWeb/arendeprocess_grunduppgifter.jsp', function(data) {        
        popup.html(data);
        popup.show('fast');
    });

我已将该操作附加到一个按钮,它激活了警报,但没有呈现弹出窗口。这有什么问题?

我已将其减少到一页,但没有任何效果:

<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() {
    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>
4

1 回答 1

1

您尚未将 js 代码包装在 onready 事件中。请参阅http://api.jquery.com/ready/

jQuery(function($){

    function popup() {
        var popup = $('.newpopup');
        popup.draggable();
        popup.resizable();
        popup.html('<p>Where is pancakes house?</p>');
        popup.show('fast');
    }
    $('button').click(popup);
});

本质上,您的代码中发生的事情是$('button')返回一个空集,并且您将处理程序附加到一个空集,因此您根本没有附加处理程序。jQuery 不会为此引发错误。

于 2012-06-18T07:23:02.850 回答