1. 程式人生 > 實用技巧 >關於IE和非IE瀏覽器的一些差異筆記

關於IE和非IE瀏覽器的一些差異筆記

區別瀏覽器

        // 瀏覽器判斷(vue定義函式方法)
        JudgeBroswer: function () {
            var userAgent = navigator.userAgent.toLowerCase();
            if (userAgent.indexOf("compatible") > -1 && (userAgent.indexOf("MSIE") > -1 || userAgent.indexOf("msie") > -1)) {
                return "IE
"; } else { return "others"; } },

值得注意的是:navigator.userAgent.toLowerCase();能夠獲取各個瀏覽器的資訊資訊,但是資訊裡面包含了預設瀏覽器資訊,例如:"mozilla/5.0 (compatible; msie 10.0; windows nt 6.1; wow64; trident/6.0; slcc2; .net clr 2.0.50727; .net clr 3.5.30729; .net clr 3.0.30729; media center pc 6.0; .net4.0c; .net4.0e)",“mozilla/5.0

”表示的是預設瀏覽器的資訊,裡面的“msie 10.0”才是表示當前版本的IE瀏覽器資訊。

各部分功能差異

1.關於滾動條的差異:

  以jq為基礎

if ("IE" == _this.JudgeBroswer()) {
  HValue
= $("#CBRFTextID")[0].scrollHeight; // IE中獲取滾動條的高度使用的是scrollHeight
}
else{
  HValue
= $("#CBRFTextID")[0].scrollTopMax; // 非IE下,可以使用ScrollTop(),但是ScrollTop()主要是用來設計滾動條的高度,並且獲取滾動條能夠滑動的高度,一般情況下,是滑動到底部能夠獲取滾動條的高度(滑動高度+頁面本身高度),所以沒必要做滾動底部的操作,所以這裡使用了scrollTopMax

}

2.關於css樣式中textarea自動換行差異:

word-break:break-all;  /* 非IE下textarea自動換成*/
word-wrap : break-word;  /* 非IE下textarea自動換成*/

3.待續...

、、