Javascript错误阻止加载以后的javascript文件

时间:2017-07-25 02:33:09

标签: javascript

为什么这种奇怪的行为?

脚本标记内的javascript错误导致第二个脚本标记中包含的javascript无法正常工作。评论坏线允许第二个包含的脚本工作。

我的问题是,它为什么会这样?不应该在第二个包含的脚本中不受单独的,不相关的脚本元素中的任何错误的影响吗?

我花了一些时间来解决这个问题,因为虽然我在控制台中看到了错误,但它们并没有包含在我自己的脚本中,因此看起来无关紧要。

以下是控制台错误:

jquery.table.addrow.js:26 Uncaught TypeError: $(...).live is not a function
    at ExpandableTable.live (jquery.table.addrow.js:26)
    at init.$.fn.btnAddRow.$.fn.tableAutoAddRow (jquery.table.addrow.js:299)
    at HTMLDocument.<anonymous> (?c=cf&v=sis&sf=cs&n=63:28)
    at fire (jquery.js:3048)
    at Object.fireWith [as resolveWith] (jquery.js:3160)
    at Function.ready (jquery.js:433)
    at HTMLDocument.completed (jquery.js:104)

这是导致错误的代码。在我对第一个<script>元素中的违规代码进行评论后,第二个<script>元素完美运行:

 <script type='text/javascript' src='https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js'></script> 
<link rel="stylesheet" href="/includes/js/jquery-ui/jquery-ui.min.css">
<script src="/includes/js/jquery-ui/external/jquery/jquery.js"></script>
<script src="/includes/js/jquery-ui/jquery-ui.min.js"></script>
<script type='text/javascript' src='/includes/js/jquery.tablesorter.min.js'></script> 
<script type='text/javascript' src='/includes/js/jquery.jeditable.mini.js'></script>

<script type='text/javascript' src='/includes/js/jquery.table.addrow.js'></script>

   <script type="text/javascript">
       $(document).ready(function() { 
    // THESE ARE THE BAD LINES
         $('.appendRow').btnAddRow({rowNumColumn:'rowNumber'});
        $('.delRow').btnDelRow();
       });
   </script>
   <script type="text/javascript" src="asdf.js"></script>

asdf.js内部没有任何内容可行,除非我评论2&#34;坏线&#34;在第一个脚本中。 E.g。

asdf.js:

$(document).ready(function() {
   alert('hahaha'); // no output. document is never ready?
});

现在,如果我评论&#34;坏线&#34;在这样的脚本中:

//$('.appendRow').btnAddRow({rowNumColumn:'rowNumber'});
//$('.delRow').btnDelRow();

然后脚本2工作!所以我不认为问题可能是jQuery没有被加载。否则,在评论&#34;坏线&#34;之后,脚本2仍然无法正常工作。在脚本1中。

0 个答案:

没有答案