时间:2013-11-14 20:03:46

标签: javascript html html5

我的页面中有两个标签,如下所示:

<![CDATA[
<script type="text/javascript" src="Somejavasrcipt.js"></script> 
<script type="text/javascript"> 
callingThisFunction("Hello-_-Hello"); 
</script>

我尝试删除这两个标签并将所有内容放在一起,类似于以下内容:

<script type="text/javascript" src="Somejavasrcipt.js">
callingThisFunction("Hello-_-Hello"); 
</script>

但当我将所有内容都移到一个脚本标签下时,功能

callingThisFunction("Hello-_-Hello") 

不称为porperly。 是否有任何具体原因发生。我们不能将src属性放在这样的标签中。或者我做错了什么。

3 个答案:

答案 0 :(得分:4)

抱歉,您不能将脚本放在带有src的script标记内。忽略内部脚本并运行src代码。

因此,Somejavasrcipt.js正在运行,但内部脚本callingThisFunction("Hello-_-Hello");将被解析器完全忽略。

请参阅此MDN Article

答案 1 :(得分:1)

使用脚本标记时..如果要在脚本中添加代码忽略 src 属性>标签

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script

  

此属性指定外部脚本的URI;这可以用作直接在文档中嵌入脚本的替代方法。指定了src属性的脚本元素不应在其标记中嵌入脚本。

答案 2 :(得分:0)

您可以通过指定src来使用脚本标记。或者,您可以通过提供元素内容来使用脚本标记。你不能同时使用两者:

  

脚本可以在SCRIPT元素的内容中定义,也可以在外部文件中定义。如果未设置src属性,则用户代理必须将该元素的内容解释为脚本。如果src具有URI值,则用户代理必须忽略该元素的内容并通过URI检索脚本。注意,charset属性是指src属性指定的脚本的字符编码;它与SCRIPT元素的内容无关。

http://www.w3.org/TR/html401/interact/scripts.html