我正在尝试在我们的网站上调试一个问题,其中找不到特定的 javascript 例程。我不知道为什么,但我的想法是,如果 F12 开发工具由于某种原因无法访问代码,那么该脚本块中的任何内容都无法访问并且不会被执行。
有没有什么地方可以解释为什么一个脚本块中的代码是可访问的,而另一个看似相同的块是不可访问的?
我正在尝试在我们的网站上调试一个问题,其中找不到特定的 javascript 例程。我不知道为什么,但我的想法是,如果 F12 开发工具由于某种原因无法访问代码,那么该脚本块中的任何内容都无法访问并且不会被执行。
有没有什么地方可以解释为什么一个脚本块中的代码是可访问的,而另一个看似相同的块是不可访问的?
替换为language="javascript"
或删除language="JavaScript"
根据https://msdn.microsoft.com/en-us/library/ms533940(v=vs.85).aspx获取属性语言。
javascript
脚本是 JavaScript。
尽管我将赏金授予第一篇文章,但实际答案是第二个 javascript 块中的错误使整个块的断点处理无效。
要对此进行诊断(如果代码不是您自己的,或者您很久以前编写的并且忘记了您在哪里进行了更改)是将每个例程分成自己的单独块,然后找到仍然失败的块。然后,用细齿梳理该例程以确定语法错误的原因——彻底!
一旦我确定了原因(错位的分号),就会为整个块重新启用断点。
其他原因可能是由于重复的函数名称,代码块无法访问。然而,这不是我的情况,所以我没有确认这是导致断点无法到达的可能原因。
似乎函数 positionCollectionList() 调用最终返回,并且在您的情况下,下一个代码块 strDGLabel_ContributingFactors 没有包含在任何函数中,因此无法调用或执行它,这意味着它是无法访问的代码。
为了确保您可以尝试以下示例
尝试将以下代码保存为 html 文件并在 IE 中打开它,然后尝试在第 8 行保留断点,您将重现该问题。
<html>
<script>
var te;
</script>
<script>
var test="testing";
return;
te="test";
</script>
<body>
HI
</body>
</html>
谢谢