-2

下面这两个是一样的吗?

<script type="text/javascript"> 
var $j = jQuery.noConflict();
$j(document).ready(function () {
    $j('.fancybox').fancybox({
        maxWidth    : 700,
        maxHeight   : 550,
        minHeight   : 500,
        closeBtn:true
    });
    $j('a.fancybox').fancybox({
        maxWidth    : 700,
        maxHeight   : 550,
        minHeight   : 500,
        closeBtn:true
    });
    $j('#homeslider iframe').each(function() {
        var url = $j(this).attr("src")
        $j(this).attr("src",url+"&amp;wmode=Opaque")
    });
});
</script>
<script>
var $j = jQuery.noConflict();
$j(function(){
    // jQuery UI Dialog  
    $j('#dialog').dialog({
        autoOpen: false,
        width: 400,
        modal: true,
        resizable: false,
        buttons: {
            "Submit Form": function() {
                document.testconfirmJQ.submit();
            },
            "Cancel": function() {
                $j(this).dialog("close");
            }
        }
        return false;
    });
});
</script>

和这个

<script type="text/javascript"> 
var $j = jQuery.noConflict();
$j(document).ready(function () {
    $j('.fancybox').fancybox({
        maxWidth    : 700,
        maxHeight   : 550,
        minHeight   : 500,
        closeBtn:true
    });
    $j('a.fancybox').fancybox({
        maxWidth    : 700,
        maxHeight   : 550,
        minHeight   : 500,
        closeBtn:true
    });
    $j('#homeslider iframe').each(function() {
        var url = $j(this).attr("src")
        $j(this).attr("src",url+"&amp;wmode=Opaque")
    });
});
$j(function(){
    // jQuery UI Dialog  
    $j('#dialog').dialog({
        autoOpen: false,
        width: 400,
        modal: true,
        resizable: false,
        buttons: {
            "Submit Form": function() {
                document.testconfirmJQ.submit();
            },
            "Cancel": function() {
                $j(this).dialog("close");
            }
        }
        return false;
    });
});
</script>

我删除了关闭脚本并开始新的脚本来连接这两个。我还删除了多余的 noConflict。为什么在我的标题中使用这两种不同的用途会得到不同的行为?

4

1 回答 1

1

你没有描述发生了什么变化。但是看着它,我猜你的第二个script从来没有开始工作过。

它们是相同的,但如果你的第二个接近尾声script,你就错位了return falsescript这是一个语法错误,当它们连接在一起时会对整体产生影响。

$j(function(){
    // jQuery UI Dialog  
    $j('#dialog').dialog({
        autoOpen: false,
        width: 400,
        modal: true,
        resizable: false,
        buttons: {
            "Submit Form": function() {
                document.testconfirmJQ.submit();
            },
            "Cancel": function() {
                $j(this).dialog("close");
            }
        }
        return false;  // INVALID SYNTAX
    });
});

请在开发过程中保持浏览器的开发者控制台打开。这会告诉您语法错误,并且应该是您诊断问题的第一个地方。

当您确实发布了一个您无法弄清楚的问题时,请从一开始就发布一个完整的示例。

此外,当您发布问题时,请勿使用诸如“行为不同”或“不起作用”之类的模糊术语。详细描述你观察到的东西。

于 2013-04-14T19:30:01.583 回答