bru*_*zgr 3 javascript firefox internet-explorer
我在这里的脚本中遇到了一些错误,在第一个我声明了 var text(); 键入以创建一个包含一些文本内容的框。
var x=$('#x').text();
Run Code Online (Sandbox Code Playgroud)
在我的第二个 .js 中,我正在对这个 var 进行一些处理,以确保我的文本字符少于 max-length,这里是:
var limitMaxLength = function(element) {
var maxLength = $(element).data("max-length");
if (maxLength) {
$(element).on("keypress", function(event){
if (event.target.innerText.length > maxLength || event.keyCode === 13) {
event.preventDefault();
}
});
}
};
Run Code Online (Sandbox Code Playgroud)
所以我在 Firefox 上遇到了一些问题,出现了这个错误:[TypeError: event.target.innerText is undefined]
在 IE、Opera、Chrome 和 Safari 中,我的代码运行良好,但仅在 Firefox 上出现错误。*对不起,我的英语不好。
innerText
是旧时代遗留下来的 Microsoft Creation。Firefox 决定不支持它,而是支持符合 w3 的textContent
. 但是,IE8 及以下版本不支持textContent
,因此,如果您希望支持旧版浏览器,您就有点麻烦了。
var text = elem.textContent || elem.innerText;
Run Code Online (Sandbox Code Playgroud)
或者
elem.innerHTML // eww, but it works, eh?
Run Code Online (Sandbox Code Playgroud)
或者,放弃 IE8(说起来容易做起来难,尤其是在工作中)
归档时间: |
|
查看次数: |
4997 次 |
最近记录: |