亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JS非行間樣式獲取函數(shù)的實例代碼

 更新時間:2018年06月05日 10:46:26   作者:糯米控  
這篇文章主要介紹了JS非行間樣式獲取函數(shù)的實現(xiàn)代碼,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下

行間樣式:元素內(nèi)部用style定義的樣式,如:<div style="width:200px;"></div>

非行間樣式:在<style></style>內(nèi)通過css定義的樣式

先看一段出問題的代碼

<!DOCTYPE html> 
<html> 
  <head> 
    <meta charset="UTF-8"> 
    <title></title> 
  </head> 
  <style> 
    div{ 
      height: 100px; 
      width: 100px; 
      border: 2px solid black; 
      background: red; 
    } 
  </style> 
  <body> 
    <div id="div1" style=""> 
      寬 
    </div> 
  </body> 
  <script type="text/javascript" > 
    window.onload =function(){ 
      var oDiv1=document.getElementById('div1'); 
      oDiv1.onclick=function(){ 
        oDiv1.style.width=200+'px'; 
      } 
    } 
  </script> 
</html> 

我在頁面放了一個方塊,紅底黑邊,想通過點擊該方塊讓他的寬度變?yōu)?00px,看一下結(jié)果——沒有任何反應(yīng),也沒有報錯。

在事件中添加alert('a');有反應(yīng),說明onclick事件被觸發(fā)了,那么就是

oDiv1.style.Width=200+'px'; 

這行代碼有問題。

打印一下這個這個變量:

alert(oDiv1.style.Width); 

雖然不報錯,但是顯示空白,即使用變量賦值之后任然無法獲取這個值,真正的原因是style只能獲取行間樣式,試一下:

<!DOCTYPE html> 
<html> 
  <head> 
    <meta charset="UTF-8"> 
    <title></title> 
  </head> 
  <style> 
     
  </style> 
  <body> 
    <div id="div1" style="height: 100px; 
      width: 100px; 
      border: 2px solid black; 
      background: red;"> 
      寬 
    </div> 
  </body> 
  <script type="text/javascript" > 
    window.onload =function(){ 
      var oDiv1=document.getElementById('div1'); 
      oDiv1.onclick=function(){ 
        oDiv1.style.width=200+'px'; 
      } 
    } 
  </script> 
</html> 

可以確定確實是行間樣式與非行間樣式的問題,實際上不可能把所有樣式都寫在行間。

要解決這個問題,需要引入兩個元素屬性——currentStyle和getComputedStyle(obj, false)

currentStyle——獲取非行間(當前樣式)IE瀏覽器專屬,chrome和FF不兼容。

getComputedStyle(obj, false)——獲取非行間(計算后的樣式)IE不兼容。

<script type="text/javascript" > 
  window.onload =function(){ 
    var oDiv1=document.getElementById('div1'); 
    oDiv1.onclick=function(){ 
            //FF、chrome 
            alert(getComputedStyle(oDiv1, false).width); 
            //IE 
            alert(oDiv1.currentStyle.width); 
    } 
  } 
</script> 

把他封裝一下寫成一個公用函數(shù):

//obj:哪個元素 
//attr:那個樣式 
function getStyle(obj,attr){ 
  if(obj.currentStyle){ 
    //IE 
    return obj.currentStyel[attr]; 
  }else{ 
    //FF 
    return getComputedStyle(obj, false)[attr]; 
  } 
} 

通過判斷obj.currentStyle是否為真來判斷當前瀏覽器為IE還是其他。

注意:.width的寫法可以寫成['width']

總結(jié)

以上所述是小編給大家介紹的JS非行間樣式獲取函數(shù)的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • JavaScript返回網(wǎng)頁中超鏈接數(shù)量的方法

    JavaScript返回網(wǎng)頁中超鏈接數(shù)量的方法

    這篇文章主要介紹了JavaScript返回網(wǎng)頁中超鏈接數(shù)量的方法,使用javascript中的document.links實現(xiàn)這一功能,需要的朋友可以參考下
    2015-04-04
  • 微信小程序中this.data與this.setData的區(qū)別詳解

    微信小程序中this.data與this.setData的區(qū)別詳解

    這篇文章主要給大家介紹了關(guān)于微信小程序中this.data與this.setData區(qū)別的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起看看吧
    2018-09-09
  • javascript中的Function.prototye.bind

    javascript中的Function.prototye.bind

    這篇文章主要介紹了javascript中的Function.prototye.bind的相關(guān)資料,需要的朋友可以參考下
    2015-06-06
  • JavaScript實現(xiàn)簡易的天數(shù)計算器實例【附demo源碼下載】

    JavaScript實現(xiàn)簡易的天數(shù)計算器實例【附demo源碼下載】

    這篇文章主要介紹了JavaScript實現(xiàn)簡易的天數(shù)計算器,結(jié)合實例形式分析了javascript日期與時間計算的相關(guān)技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下
    2017-01-01
  • JavaScript 中的12種循環(huán)遍歷方法【總結(jié)】

    JavaScript 中的12種循環(huán)遍歷方法【總結(jié)】

    本文給大家總結(jié)了12種JavaScript 中的1循環(huán)遍歷方法,每種方法通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-05-05
  • 微信小程序 自定義消息提示框

    微信小程序 自定義消息提示框

    這篇文章主要介紹了微信小程序 自定義消息提示框的相關(guān)資料,wx.showToast(OBJECT)接口調(diào)用,實現(xiàn)改功能,需要的朋友可以參考下
    2017-08-08
  • ES6入門教程之let和const命令詳解

    ES6入門教程之let和const命令詳解

    最近做項目的過程中,使用到了ES6,因為之前很少接觸,所以使用起來還不夠熟悉。通過學習網(wǎng)上的教程后覺著有必要整理下遇到的let和const命令,所以這篇文章主要給大家介紹了ES6中l(wèi)et和const命令的相關(guān)資料,需要的朋友可以參考下。
    2017-05-05
  • js實現(xiàn)簡單手風琴效果

    js實現(xiàn)簡單手風琴效果

    這篇文章主要為大家詳細介紹了js實現(xiàn)簡單手風琴效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • JS實現(xiàn)簡單拖拽效果

    JS實現(xiàn)簡單拖拽效果

    這篇文章主要為大家詳細介紹了JS實現(xiàn)拖拽效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • 淺談Webpack核心模塊tapable解析

    淺談Webpack核心模塊tapable解析

    這篇文章主要介紹了淺談Webpack核心模塊tapable解析,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09

最新評論