天天看點

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

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打開開發人員工具一看,結果:

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

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

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

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

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

轉載于:https://www.cnblogs.com/luckyyang/p/7516184.html