1. 程式人生 > >IE7、IE8不兼容js trim函數的解決方法

IE7、IE8不兼容js trim函數的解決方法

擴展 員工 對象 var this clas pan 1-1 string

IE兼容,有時候讓人頭疼,但又不得不去解決。

先看看一下代碼:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
    <script src="../../Scripts/jquery-1.11.1.min.js"></script>
    <script
> $(function () { $("#btn").click(function () { var text = $("#text").val().trim(); alert(text); }) }) </script> </head> <body> <input type="text" id="text"/> <input type="button" id="btn" value
="click mi"/> </body> </html>

點擊按鈕,獲取值,然後alert值。在chrome、火狐等其他瀏覽器,完美運行。

然而,放到IE7,IE8中,始終怎麽點擊沒有反應,然後F12打開開發人員工具一看,結果:

技術分享

好吧,不支持,那就自己解決。

其實也簡單,理解trim函數的原理就好辦。給js中String對象擴展一個方法。

        String.prototype.trim = function () {
            return this.replace(/^\s\s*/, ‘‘).replace(/\s\s*$/, ‘‘);
        }

然後再運行,一切又如從前那樣。

IE7、IE8不兼容js trim函數的解決方法