4 回答

TA貢獻1813條經驗 獲得超2個贊
有很多網站都引用的google的在線jquery文件,國內對google屏蔽之后,jquery文件引用失敗,網頁的dom元素能加載出來,但頁面的jquery動畫效果受到影響,使用jquery的代碼就報錯了(‘jquery’和‘$’都是jquery的標識符)。
你可以在網頁開發者工具的element標簽下查看一下網頁是引用了什么地方的jquery,點擊那個鏈接,看能不能打開,不能打開就是引用失敗了。

TA貢獻1877條經驗 獲得超6個贊
頁面上引用的js文件中函數不能執行的原因:找不到函數,會報錯或undefined;語法錯誤;沒有引用js文件等。
具體的解決方法:
1、函數應當直接寫在頁面即可調用;
2、確保有引用js文件,如果引用了的話,也是可以調用的。引用方式,可以直接拖拽(因為路徑準確),也可以自己寫,引用腳本:<script src="Scripts/JScript.js" type="text/javascript"></script>
3、引用的js文件一定要在調用之前,否則就找不到函數了,會報錯或undefined。
調用頁面:
123456789 | <script src= "Scripts/JScript.js" type= "text/javascript" ></script> <script type= "text/javascript" > aa(); </script> Script.js中代碼: function aa() { alert( "js文件掉用" ); } |
另外:在BS項目中,某個aspx頁面需要引用外部:腳本文件,通過在頁面head節<script language="" src="">方式引用指定的js之后,仍然無效。
通過alert方式調試,發現是由于js文件編碼與js文件內容不符。由于js文件中包含中文注釋,所以需要設置js文件為可識別中文的gb2312編碼。其方法如下:
在.net中通過這種方式引用js文件<script type="text/javascript" src="setday0.js"></script> 然后在頁面中調用setday0.js文件中的方法往往會出錯!但是如果把setday0.js文件的內容直接放到該頁面中來又一點問題也沒有。就在頁面中重寫js代碼。
這個問題是由于.net中的text編碼所引起的,需要把setday0.js文件保存為UTF-8或者其他Unicode編碼方式,問題就迎刃而解。原來的文本編碼為gb2312,因為其中有漢字。
如何進行編碼轉換?
1、用記事本打開,保存的時候選擇Unicode編碼;
2、直接在vs中選擇另存為,保存按鈕右邊有個小箭頭,點一下,然后選擇編碼方式再保存就ok。

TA貢獻1796條經驗 獲得超7個贊
1.函數直接寫在頁面相當于是你本頁調用,所以理所應當可以調用
2.js單獨文件不能調用是因為你沒有引用js文件,如果引用了的話,也是可以調用的。
引用方式,你可以直接拖拽(我一般都是拖拽,因為路徑準確),也可以自己寫,引用腳本:<script src="Scripts/JScript.js" type="text/javascript"></script>
3.還有就是,引用的js文件一定要在調用之前,否則就找不到函數了,會報錯或undefined
例如:
調用頁面:
<script src="Scripts/JScript.js" type="text/javascript"></script>
<script type="text/javascript">
aa();
</script>
Script.js中代碼:
function aa() {
alert("js文件掉用");
}
最后,希望對你有幫助
- 4 回答
- 0 關注
- 1184 瀏覽
添加回答
舉報