web前端筆試題(二)

一、頁面導入樣式時,使用link,@import,有什麼區別?javascript

Link 屬於 html 標籤,而@import 是 CSS 中提供的
在頁面加載的時候,link 會同時被加載,而@import 引用的 CSS 會在頁面加載完成後纔會加
載引用的 CSS
@import 只有在 ie5 以上才能夠被識別,而 link 是 html 標籤,不存在瀏覽器兼容性問題css

Link 引入樣式的權重大於@import 的引用html

請介紹下css中針ie6-9對,經常使用的hack方法java

background-color:red\9; /*all ie*/瀏覽器

background-color:yellow\0; /*ie8*/app

+background-color:pink; /*ie7*/函數

_background-color:orange; /*ie6*/prototype

 

三、JavaScript基本數據類型有哪些?指針

Number、String 、Boolean、Null和Undefinedhtm

四、請介紹下JavaScript原型、原型鏈的特色

一、javascript原型

JS中每一個函數都存在有一個原型對象屬性prototype。而且全部函數的默認原型都是Object的實例。

二、javascript原型鏈

每一個繼承父函數的子函數的對象都包含一個內部屬性_proto_。該屬性包含一個指針,指向父函數的prototype。若父函數的原型對象的_proto_屬性爲再上一層函數。在此過程當中就造成了原型鏈。

三、特色

原型鏈實現了繼承。

五、請用原生js實現添加、移除、移動、複製、建立和查找DOM節點

(1)建立新節點

      createDocumentFragment()    //建立一個DOM片斷

      createElement()   //建立一個具體的元素

      createTextNode()   //建立一個文本節點

(2)添加、移除、替換、插入

      appendChild()

      removeChild()

      replaceChild()

      insertBefore()

(3)查找

      getElementsByTagName()    //經過標籤名稱

      getElementsByName()    //經過元素的Name屬性的值

      getElementById()    //經過元素Id,惟一性

六、實時監測用戶在input內輸入的字符數應該監聽哪一個事件?

//經過偵聽輸入框,實時顯示輸入字符
if(/msie/i.test(navigator.userAgent)){
 document.querySelector("input").addEventListener("propertychange", function(){
        var input_value = document.querySelector("input").value;
        document.querySelector(".value").innerHTML = input_value /10;
    })       
}else{          
 document.querySelector("input").addEventListener("input", function(){
        var input_value = document.querySelector("input").value;
        document.querySelector(".value").innerHTML = input_value /10;
    })   
}

 

/msie/i.test(navigator.userAgent)能夠進行瀏覽器內核判斷,區分IE和非IEIE使用propertychange,非IE使用input事件,經過監聽輸入框的每一次輸入,來實時的反饋顯示給用戶。
相關文章
相關標籤/搜索