『壹』 怎麼樣通過js DOM獲取一個節點的文本內容
首先 nextSibling 並不是所有瀏覽器執行後 結果都是一樣的!
這是我寫的:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Document</title>
</head>
<body>
<p>This is One </p>
<p>This is Two </p>
<script>
var p = document.getElementsByTagName("p");
p[1].innerHTML= "This is Change";
</script>
</body>
</html>
我用一個變數接收整個頁面有多少個p標簽
然p是一個數組 數組從0開始 我要操作第二個 我就p[1] 來操作他
這里 我改變了第二個p標簽的值 !
『貳』 js中fireEvent和onclick的區別
DOM的fireEvent和onclick(這只是個代表)有以下區別:
1. onclick需要DOM真正添加了onclick事件,否則會報「對象不支持此屬性或方法」錯誤
2. onclick不會引起IE的冒泡過程,而fireEvent會引起冒泡,fireEvent更貼近用戶真實的行為觸發
3. 由第二條得出,fireEvent在即使DOM沒有click事件也可以fireEvent,而不會報錯(更貼近用戶真實行為)
最後可以拿下面的代碼測試:
<ul onclick='alert(event.srcElement.innerHTML);'> <li id='id1' onclick='alert(1);'>i am one;</li> <li id='id2'>i am two;</li> <li id='id3'>i am three;</li> </ul> <button onclick='document.getElementById("id1").onclick();'>click me!</button> <button onclick='document.getElementById("id1").fireEvent("onclick")'>fireEvent !</button>
原文:http://www.js8.in/731.html
『叄』 JS表單代碼獲得焦點自動清除提示,失去焦點恢復默認提示
第一個問題的解決辦法:
<scripttype="text/javascript">
window.onload=function(){
varkeyWord=document.getElementsByName('keyWord')[0];//搜索name為keyWord的DOM對象
keyWord.onfocus=function(){
keyWord.value='';
};
keyWord.onblur=function(){
keyWord.value='搜索您感興趣的資源';
};
}
</script>
第二個問題之所以沒反應是因為你的提交按鈕的type寫錯了,應該是
<inputname="提交"type="submit"class="gobackcolr"value="GO"/>
希望對你有所幫助!
『肆』 原聲js怎麼觸發click事件
如果你只需要觸發那些常見的事件,比如說滑鼠點擊,並且不考慮跨瀏覽器兼容的問題的話,只需要這樣做:
document.getElementById('myLink').click()
當然這么做的兼容性並不好,比如說 FireFox 就不幹。另外 onclick() 這樣的方法只能用於在 HTML 中的內聯寫法。
如果事情稍微復雜一些,比如說你要觸發一些自定義的事件,那麼你必須要理解 DOM 裡面的「事件對象模型」,本質上 $.trigger() 就是對這些概念的封裝。不過問題是 DOM 的一致性和兼容性一直都不太好,所以關於事件的對象模型長期以來都處於一個比較混亂的狀況下,如果不用 jQuery 的話,想找到一個既簡單又足夠健壯的解決方案並不容易。
很長時間以來,人們都是這樣做的:
// 創建一個事件對象,就好像你綁定事件回調函數里獲得的那個事件對象一樣
var myEvent = document.createEvent('Event')
// 初始化這個事件對象,為它提高需要的「特性」
myEvent.initEvent('myEventName', true, true)
// 按照常見的方式綁定對該事件的監聽,這里的 element 可以是任何一個元素,你懂的
element.addEventListener('myEventName', function(evt) {
// 這里,evt 就是你創建的事件對象了,不過它會更豐富一些——這些是瀏覽器為你做的
})
// 然後這樣觸發它
element.dispatchEvent(myEvent)
你必須要去閱讀 createEvent initEvent dispatchEvent 這些方法的文檔來完整認識它們(文檔可以去 MDN 找),上面介紹的只是基本用法。$.trigger() 所封裝的也就是它們(及其相關的兼容性處理等等)。不過這些方法已經有點「過時」了,特別像 initEvent 這樣的方法更是已經被(新的 DOM 標准)廢棄了。
以下是更「現代」的做法,不過老樣子:兼容性會是問題:
var myEvent = new Event('myEventName')
element.dispatchEvent(myEvent)
綁定回調是一樣的我就不重復了。另外「現代」的做法里觸發內建事件要用對應的介面,比如說:
var event = new MouseEvent('click', {
'view': window,
'bubbles': true,
'cancelable': true
});
『伍』 js 怎麼用一個按鈕控制DIV來回顯示和隱藏
1、打開Hbuilder編輯器,新建一個html空白文檔,輸入基本的結構,然後按下Crtl+S保存一下版: