最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript代碼因逗號不規(guī)范導(dǎo)致IE不兼容的問題

 更新時間:2016年02月25日 10:30:40   投稿:mrr  
這篇文章主要介紹了JavaScript代碼因逗號不規(guī)范導(dǎo)致IE不兼容的問題的相關(guān)資料,需要的朋友可以參考下

在用ExtJS做前端開發(fā)的時候,發(fā)現(xiàn)系統(tǒng)可以在谷歌瀏覽器、火狐下正常顯示,但是用IE瀏覽器打開就會報錯,報錯信息如:Expected identified, string or number。后來,檢查的代碼的時候發(fā)現(xiàn),是由于js代碼中逗號用的不規(guī)范導(dǎo)致的IE不兼容。

由于我是用eclipse來寫代碼的,下面我也就介紹怎么用eclipse來解決這個問題:

例如有下面這么一段不規(guī)范的代碼:

Ext.onReady(function() {
var panel = Ext.create('Ext.container.Viewport', { 
layout : 'border',
items : [{
title : 'north panel',
html : 'north content',
region : 'north',
height : 100,
}, {
title : 'west panel',
html : 'west content',
region : 'west',
width : 150, // 這是備注1
}, {
title : 'main panel',
html : 'main content',
region : 'center',
/* 這是備注2*/
}]
});
});

可以看到,在100、150、center后面都有一個逗號(,),用IE運行的話,其實是會報錯的。那么既然代碼已經(jīng)寫成這樣了,怎么檢測到這個問題呢!

 

圖1:File Search

如上圖1所示,可以用eclipse的File Search功能,利用正則表達式進行搜索,正則表達式為,\s*}。不過,這有個問題,只能檢索出上面的第一處錯誤,對于加了//或者/**/來注釋的情況,是檢測不出來。不過,你也可以用yuicompressor這樣的js代碼壓縮工具來壓縮代碼,壓縮的時候會將其中的所有的注釋全部去掉,然后再來檢測壓縮后的js文件即可。當(dāng)然,你也可以自己寫算法來檢測,不過,這個對于普通人來說還是有難度的!

不過,我建議用另一個方法,就是利用插件,我這里用的是Spket插件,Spket的官網(wǎng)是:http://www.spket.com/,可以到里面去下載Spket的eclipse插件,也可以直接在eclipse的market中下載,下載完以后安裝下這個插件,然后將js文件用spket打開。

 

圖2:利用Spket檢測

如上圖2所示,可以發(fā)現(xiàn)Spket自動的檢測了代碼的不規(guī)范,將其中有問題的地方都標(biāo)注了出來,我是建議用這個方法,因為可以在編寫代碼的時候,就發(fā)現(xiàn)問題,有助于寫出規(guī)范漂亮的代碼!另提一下,有些時候兼容性是因為使用的對象是IE中不存在的,比如console對象,在火狐和谷歌中是存在的,但是在ie中使用console.info就報錯了!所以,記得把一些不兼容的對象從代碼中剔除掉!

以上給大家介紹了JavaScript代碼因逗號不規(guī)范導(dǎo)致IE不兼容的問題,希望對大家有所幫助!

相關(guān)文章

  • JavaScript使用forEach()與jQuery使用each遍歷數(shù)組時return false 的區(qū)別

    JavaScript使用forEach()與jQuery使用each遍歷數(shù)組時return false 的區(qū)別

    這篇文章主要介紹了JavaScript使用forEach()與jQuery使用each遍歷數(shù)組時return false 的區(qū)別,非常不錯,需要的朋友可以參考下
    2016-08-08
  • JS對select控件option選項的增刪改查示例代碼

    JS對select控件option選項的增刪改查示例代碼

    Javascript操作select是表單中比較常見的,大家可以在網(wǎng)上搜索到很多的相關(guān)資料,接下來為大家詳細介紹下,JS動態(tài)操作select中的各種方法,感興趣的朋友可以參考下
    2013-10-10
  • JS日期和時間選擇控件升級版(自寫)

    JS日期和時間選擇控件升級版(自寫)

    鑒于網(wǎng)上找到的幾個日期選擇程序有些問題,遂著手重寫一個程序,添加了時間選擇功能,截圖及源碼如下,有需要的朋友可以參考下
    2013-08-08
  • js實現(xiàn)添加刪除表格操作

    js實現(xiàn)添加刪除表格操作

    這篇文章主要為大家詳細介紹了js實現(xiàn)添加刪除表格操作,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • JS導(dǎo)出PDF插件的方法(支持中文、圖片使用路徑)

    JS導(dǎo)出PDF插件的方法(支持中文、圖片使用路徑)

    下面小編就為大家?guī)硪黄狫S導(dǎo)出PDF插件的方法(支持中文、圖片使用路徑)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-07-07
  • JS保留兩位小數(shù),多位小數(shù)的示例代碼

    JS保留兩位小數(shù),多位小數(shù)的示例代碼

    本篇文章主要是對JS保留兩位小數(shù),多位小數(shù)的示例代碼進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-01-01
  • 簡短幾句 通俗解釋javascript的閉包

    簡短幾句 通俗解釋javascript的閉包

    什么是閉包呢?閉包就是函數(shù)實例執(zhí)行過程中動態(tài)產(chǎn)生一個沒有被釋放資源的棧區(qū),也是一個預(yù)執(zhí)行的過程。
    2011-01-01
  • Bootstrap 設(shè)置datetimepicker在屏幕上面彈出設(shè)置方法

    Bootstrap 設(shè)置datetimepicker在屏幕上面彈出設(shè)置方法

    datetimepicker默認是在輸入框下面彈出的,但是遇到輸入框在屏幕下面時,日期選擇框會有一部分在屏幕下面,顯示不了,因此需要能夠從上面彈出,下面小編給大家介紹下Bootstrap 設(shè)置datetimepicker在屏幕上面彈出的設(shè)置方法
    2017-03-03
  • 詳解JS如何使用Promise緩存網(wǎng)絡(luò)請求

    詳解JS如何使用Promise緩存網(wǎng)絡(luò)請求

    網(wǎng)絡(luò)請求是現(xiàn)代Web應(yīng)用中的常見操作,很多時候需要獲取服務(wù)器上的數(shù)據(jù),在進行網(wǎng)絡(luò)請求時,為了減輕服務(wù)器的壓力,緩存策略常被用來避免對同一數(shù)據(jù)的重復(fù)請求,本文將探討如何使用Promise結(jié)合緩存來高效處理網(wǎng)絡(luò)請求,需要的朋友可以參考下
    2023-12-12
  • 使用canvas實現(xiàn)鯉魚躍龍門的動畫效果

    使用canvas實現(xiàn)鯉魚躍龍門的動畫效果

    這篇文章主要給大家介紹了使用canvas實現(xiàn)鯉魚躍龍門的動畫效果,文中通過代碼示例給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作有一定的幫助,感興趣的小伙伴可以自己動手嘗試一下
    2024-02-02

最新評論

古浪县| 新建县| 乌拉特前旗| 新丰县| 黄骅市| 尖扎县| 凤山市| 偃师市| 旬阳县| 荔浦县| 永福县| 同仁县| 班戈县| 济阳县| 阿荣旗| 越西县| 宾阳县| 河源市| 博白县| 蓬溪县| 乌鲁木齐县| 莆田市| 上犹县| 合阳县| 忻州市| 和龙市| 海淀区| 保康县| 兴化市| 黄平县| 汕尾市| 尚志市| 巴塘县| 广平县| 博白县| 广州市| 拜泉县| 九龙坡区| 南陵县| 江华| 久治县|