判斷用戶輸入事件
- 正常瀏覽器:oninput
- ie678 支持:onpropertychange
$("txt").oninput = $("txt").onpropertychange = function(){
if(this.value == ""){
$("message").style.display = 'block';
}else{
$("message").style.display = 'none';
}
}
封裝自己class類终吼,根據(jù)類名找對象 同getElementByClassnme
function getClass(classname){
//如果瀏覽器支持纹蝴,則直接返回
if(document.getElementsByClassName)
{
return document.getElementsByClassName(classname);
}
// 不支持的 瀏覽器
var arr = []; // 用于存放滿足的數(shù)組
var dom = document.getElementsByTagName("*");
//alert(dom.length);
for(var i=0;i<dom.length;i++)
{
if(dom[i].className == classname)
{
arr.push(dom[i]);
}
}
return arr;
}
兄弟節(jié)點
- nextSibling 下一個兄弟 親的 ie 678 認識
- nextElementSibling 其他瀏覽器認識的
- previousSibling 同理 上一個兄弟
- previousElementSibling
- var div = one.nextElementSibling || one.nextSibling;
子節(jié)點
- firstChild 第一個孩子 ie678
- firstElementChild 第一個孩子 正常瀏覽器
- var one.firstElementChild || one.firstChild;
按鈕不可用
- btn.disabled = “disabled” || btn.disabled = true; //不能用
事件兼容性寫法
- var event = event || window.event;
拖動 原理 == 鼠標按下 接著 移動鼠標 。
bar.onmousedown = function(){
document.onmousemove = function(){
}
}
拖動的時候不能選中文字
window.getSelection ? window.getSelection().removeAllRanges() : document.selection.empty();
scrollTop獲取值的函數(shù)封裝 scroll
function scroll() {
//判斷瀏覽器的類型
if(window.pageYOffset != null) // ie9+ 和其他瀏覽器
{
//返回一個對象
return {
left: window.pageXOffset,
top: window.pageYOffset
}
}
else if(document.compatMode == "CSS1Compat") // 聲明的了 DTD
// 檢測是不是怪異模式的瀏覽器
{
return {
left: document.documentElement.scrollLeft,
top: document.documentElement.scrollTop
}
}
return { // 剩下的肯定是怪異模式的
left: document.body.scrollLeft,
top: document.body.scrollTop
}
}
window.onscroll = function() {
console.log(scroll().top);
}
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者