开发者

JavaScript split function not working in IE

开发者 https://www.devze.com 2023-03-14 13:28 出处:网络
I am using the split function in JavaScript.Itworks fine in Firefox and Chrome, but IE displays an error when I call the split 开发者_运维技巧function.Is there a way to use other function like split?s

I am using the split function in JavaScript. It works fine in Firefox and Chrome, but IE displays an error when I call the split 开发者_运维技巧function. Is there a way to use other function like split?


split Method

It's fully supported by IE8

split method for JScript 5.6

It's also fully supported by IE6

Live example using .split(/\s+/)

Tested in IE9 standards, IE9 IE8 mode, IE9 IE7 mode and IE9 quirks mode. All work.

Edit:

Turns out your actual problem is using .textContent. This does not work in IE. There are two alternatives.

Feature detection:

var str;
if (el.textContent) {
  str = el.textContent;
} else {
  str = el.innerText;
}

.nodeValue:

var str = el.nodeValue;


When you split a number instead of String, Javascript throws - Object doesn't support this property.

Make sure you have a string value in var.


There is at least one difference between IE below #9 and most other browsers when dealing with string splitting-

var s='In some browsers, you can "split" a string on a parenthized delimeter and return the "split-off" bits in the array.';

s.split(/( ?['"] ?)/).join('\n')

/***************************************************/
Firefox 4.0.1>>
 In some browsers, you can
 "
split
" 
a  string on a parenthized delimeter and return the
 "
split-off
" 
bits in the array.
/***************************************************/    
MSIE 8.0>>
 In some browsers, you can
split
a  string on a parenthized delimeter and return the
split-off
bits in the array.
/***************************************************/    
MSIE 9.0>>
 In some browsers, you can
 "
split
" 
a  string on a parenthized delimeter and return the
 "
split-off
" 
bits in the array.
0

精彩评论

暂无评论...
验证码 换一张
取 消