2013-04-14 5 views
-2

Являются ли эти два ниже одинаковыми?Что такое правильная публикация функций javascript?

<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. Почему у меня возникает другое поведение с этими двумя разными применениями в моем заголовке?

+2

Вы можете предоставить тестовый пример, который показывает, что они ведут себя по-другому? Они не должны. –

+3

Как насчет * описания * поведения. – 2013-04-14 18:20:49

+0

не имеет смысла ... что-то еще должно было измениться и, возможно, изменит ваш код несколькими способами и по-прежнему будет обеспечивать одинаковое поведение. – charlietfl

ответ

1

Вы не описали, что меняется. Но, глядя на это, я предполагаю, что ваш второй script никогда не работал.

Они такие же, но к концу, если ваш второй script, у вас есть неуместное return false. Это синтаксическая ошибка, которая будет влиять на весь script, когда они будут объединены.

$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 
    }); 
}); 

Пожалуйста, держите консоль разработчика открытой в процессе разработки. Это сказало бы вам о синтаксической ошибке, и должно быть первое место, которое вы отправляете для диагностики проблем.

Если вы зададите вопрос, который не можете понять, отправьте полный пример с самого начала.

Также, когда вы публикуете вопрос, не используйте неопределенные термины, такие как «ведет себя по-другому» или «не работает». Опишите подробно, что вы наблюдаете.

+0

Спасибо. Должен ли я взять это «вернуть ложь» и оставить остальное как есть? – digitalfitness

Смежные вопросы