JQuery:调用脚本内联vs外部

时间:2013-08-01 21:29:07

标签: jquery

只有一些页面需要textarea.js脚本,因此我只想在需要它的页面上调用它。这就是我现在调用它的方式(我链接到外部文件textarea.js,然后我用HTML文件末尾的内联代码调用它):

<html>
<head></head>
<body></body>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<script src="scripts/external.js"></script>
<script src="scripts/textarea.js"></script>
<script>
    $(document).ready(function(){
        $('textarea').autoGrowTextArea();
        });
</script>

</html>

优先删除HTML文件末尾的调用,而不是将其放在外部textarea.js文件的尾端?

2 个答案:

答案 0 :(得分:0)

不,我会按原样包含资源,并按原样引导您的资源。您可能希望创建一个init()函数来执行引导。抽象引导程序的主要好处是,您可以将其置于自定义钩子或回调中,并将autoGrowTextArea()逻辑推迟到任何依赖项准备就绪之后。

顺便说一句,你可以缩短它:

$(document).ready(function(){

到此:

$(function(){

答案 1 :(得分:0)

如果它是库的预期方面,那么,它应该在外部.js文件中。你不这样做的唯一原因是你的库没有对jquery的约束(它似乎是你调用了一个扩展)。

jQuery自己的验证库使用了一个非常相似的代码行,在其中添加了对document.ready的验证API的调用。