鍍金池/ 問答/HTML/ 在html中的<script>標簽中寫js,和在引入的js文件中寫j

在html中的<script>標簽中寫js,和在引入的js文件中寫js存在什么區(qū)別?

我在使用jquery chosen這個下拉插件的時候,把初始化代碼

$('#maintainerName').chosen();

寫在引入的js文件中的時候,插件無法使用,樣式可以加載出來,但點擊下拉框沒有反應(yīng)。

但只要我把這行代碼寫在當前html的<script>中,就一切正常。

在html中的<script>標簽中寫js,和在引入的js文件中寫js存在什么區(qū)別?

謝謝

回答
編輯回答
眼雜

js文件是外部引入,html里的是內(nèi)部書寫
外部引入的js能夠同時應(yīng)用于多個html頁面,會有更好的擴展性和可維護性。
內(nèi)部書寫的js只能夠應(yīng)用于當前的html文件

方法執(zhí)行不了的問題有可能是js引入順序的問題,或者是你的DOM結(jié)構(gòu)是動態(tài)加載出來的

2017年6月6日 10:11
編輯回答
詆毀你

建議檢查一下引入文件的順序, 查看一下控制臺有無報錯。

“但只要我把這行代碼寫在當前html的<script>中,就一切正常?!贝_認一下你在html里面直接寫和引入外部的js文件的位置是否是一樣的。

或者外部引入的js文件改成下面這樣試試

$(function(){
    $('#maintainerName').chosen();
})
2018年7月29日 10:01
編輯回答
心悲涼

沒什么區(qū)別,外部引用就是別的頁面也可以用;
至于你說的不起作用,可能是你引用的位置不對吧;
在body結(jié)束標簽之前,先引入插件,再引入你寫的js文件試試

2017年9月30日 22:45
編輯回答
忠妾

非常感謝大家的回答,大家說的我都試了,雖然沒有成功。很有可能是我粗心大意或者對vue不熟悉造成的,后來用了別的實現(xiàn)方法,一切正常了。非常感謝大家

2018年9月15日 08:25