首先是想實現一個select標簽,有是和無兩個option,但是在初始化的時候要求select標簽默認選擇空值,所以我在點擊的時候加了一個方法讓他把空值刪掉:
XML/HTML Code復制內容到剪貼板
!DOCTYPE html html head script src= jquery/jquery-1.11.1.min.js /script /head script $( #checkcash ).click(function () { if ($( #checkcash ).val() == 0 ) { $( #checkcash option[value= 0 ] ).remove(); }); $( #alert ).click(function(){ alert( 1123 /script body 是否已提現 select id= checkcash >
但是這樣并不能達到想要的效果,起初以為是jquery語法錯誤還一直在網上查,改,但是都不管用,后來突然想到是不是應該把script放到后面,試了一下,結果果真ok了,這才恍然大悟,原來不是這樣的。
后來查了一下原因是因為,html文件是自上而下的執行方式,但引入的css和javascript的順序有所不同,css引入執行加載時,程序仍然往下執行,而執行到 script 腳本是則中斷線程,待該script腳本執行結束之后程序才繼續往下執行。所以,一般將script放在body之后是因為避免長時間執行script腳本而延遲阻塞。而有一些頁面的效果的實現,是需要預先動態的加載一些js腳本,所以這些腳本應該放在 body 之前。其次,不能將需要訪問dom元素的js放在body之前,因為此時還沒有開始生成dom,所以在body之前的訪問dom元素的js會出錯,或者無效。就是因為這個,在dom沒生成好時我就給它添加了方法,才導致這樣。
真的應該多學習很多地方以為所以然了,卻沒深究。以后還要加油!
ps:其實還有另外一種方法,那就是用jquery的初始化頁面方法,把上面給標簽添加的點擊事件加入到$(function(){})中也是可以的,原理和上面是一樣的,這個方法是等頁面加載好了才執行,所以不管放在哪都可以了!
相關推薦:
JavaScript執行順序的簡單介紹
以上就是關于script在html中的擺放位置解析的詳細內容,html教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答