Javascript ng该更改在IE10中仍然有效,但在IE8中,它现在在这一行抛出一个对象预期错误返回新的RegExp(“(?:^ |\\s)”+className+”(?!\\s)”,isString(标志)?标志:“” document.getElementById('
ng该更改在IE10中仍然有效,但在IE8中,它现在在这一行抛出一个对象预期错误<代码>返回新的RegExp(“(?:^ |\\s)”+className+”(?!\\s)”,isString(标志)?标志:“”代码>Javascript ng该更改在IE10中仍然有效,但在IE8中,它现在在这一行抛出一个对象预期错误返回新的RegExp(“(?:^ |\\s)”+className+”(?!\\s)”,isString(标志)?标志:“” document.getElementById(',javascript,html,Javascript,Html,ng该更改在IE10中仍然有效,但在IE8中,它现在在这一行抛出一个对象预期错误返回新的RegExp(“(?:^ |\\s)”+className+”(?!\\s)”,isString(标志)?标志:“” document.getElementById('my1').style.display = 'block'; document.getElementById('my2').style.display = 'none'; document.getElementById('my3').style
document.getElementById('my1').style.display = 'block';
document.getElementById('my2').style.display = 'none';
document.getElementById('my3').style.display = 'none';
document.querySelector("select").addEventListener("change", function(){
var c = document.querySelector("#display");
c.className = "";
c.classList.add(this.value);
});
.my1 > :not(#my1){
display: none;
}
.my2 > :not(#my2){
display: none;
}
<select name="mine" id="mine">
<option value="#my1">Test1</option>
<option value="#my2">Test2</option>
</select>
<div id="my1" class="my">
<p>Some Text in 1</p>
</div>
<div id="my2" class="my">
<p>Some Text in 2</p>
</div>
.my:not(.selected) {
display: none;
}
document
.querySelector('select')
.addEventListener('change', function () {
var elements = Array.prototype.slice.call(document.querySelectorAll('.my'), 0),
target = document.querySelector(this.value);
elements
.forEach(function (elem) {
if (elem === target) {
elem.classList.add('selected');
} else {
elem.classList.remove('selected');
}
});
});
.hide {
display: none;
}
<select id="mine">
<option value="0">Test1</option>
<option value="1">Test2</option>
</select>
<div id="display1">
<div>
<p>Some Text in 1</p>
</div>
<div class="hide">
<p>Some Text in 2</p>
</div>
</div>
(function () {
var slice = [].slice,
nativeTrim = ''.trim,
trim,
classList;
function isFunction(arg) {
return typeof arg === 'function';
}
function isString(arg) {
return typeof arg === 'string';
}
function handler(object, evt, func) {
var ret;
if (evt) {
ret = func.call(object, evt);
if (false === ret) {
evt.stopPropagation();
evt.preventDefault();
}
} else {
window.event.target = window.event.srcElement;
ret = func.call(object, window.event);
if (false === ret) {
window.event.returnValue = false;
window.event.cancelBubble = true;
}
}
return ret;
}
function addEventListener(object, type, func) {
var uid = type + ':' + func,
euid = 'e:' + uid;
object[euid] = func;
if (isFunction(object.addEventListener)) {
object[uid] = function (evt) {
handler(object, evt, object[euid]);
};
object.addEventListener(type, object[uid], false);
} else if (object.attachEvent) {
object[uid] = function () {
handler(object, null, object[euid]);
};
object.attachEvent('on' + type, object[uid]);
} else {
throw new Error('Handler could not be added.');
}
}
if (isFunction(nativeTrim)) {
trim = function (text) {
return nativeTrim.call(text);
};
} else {
trim = function (text) {
return text.replace(/^\s+|\s+$/g, '');
};
}
if ('classList' in document.body) {
classList = {
contains: function (node, className) {
return node.classList.contains(className);
},
add: function add(node, className) {
node.classList.add(className);
},
remove: function (node, className) {
node.classList.remove(className);
},
toggle: function (node, className) {
node.classList.toggle(className);
}
};
} else {
classList = {
makeRegex: function (className, flags) {
return new RegExp('(?:^|\\s)' + className + '(?!\\S)', isString(flags) ? flags : '');
},
contains: function (node, className) {
return !!node.className.match(classList.makeRegex(className));
},
add: function add(node, className) {
if (!classList.contains(node, className)) {
node.className = trim(node.className);
if (node.className) {
node.className += ' ';
}
node.className += className;
}
},
remove: function (node, className) {
if (classList.contains(node, className)) {
node.className = trim(node.className.replace(classList.makeRegex(className, 'g'), ''));
}
},
toggle: function (node, className) {
if (classList.contains(node, className)) {
classList.remove(node, className);
} else {
classList.add(node, className);
}
}
};
}
window.$ = {
addEventListener: addEventListener,
classList: classList
};
}());
$.addEventListener(document.getElementById('mine'), 'change', (function () {
var children1 = document.getElementById('display1').children,
length1,
index;
return function (evt) {
for (index = 0, length1 = children1.length; index < length1; index += 1) {
$.classList.toggle(children1[index], 'hide');
}
};
}()));
<select id="mine">
<option value="test1">Test1</option>
<option value="test2">Test2</option>
<option value="test3">Test3</option>
</select>
<div id="display1">
<div>
<p>Some Text in 1</p>
</div>
<div class="hide">
<p>Some Text in 2</p>
</div>
<div class="hide">
<p>Some Text in 3</p>
</div>
</div>
$.addEventListener(document.getElementById('mine'), 'change', (function () {
var children1 = document.getElementById('display1').children,
length1,
index;
return function (evt) {
for (index = 0, length1 = children1.length; index < length1; index += 1) {
if (index === evt.target.selectedIndex) {
$.classList.remove(children1[index], 'hide');
} else {
$.classList.add(children1[index], 'hide');
}
}
};
}()));
document.getElementById('mine').addEventListener('change', (function () {
var children1 = document.getElementById('display1').children,
length1,
index;
return function (evt) {
for (index = 0, length1 = children1.length; index < length1; index += 1) {
if (index === evt.target.selectedIndex) {
children1[index].classList.remove('hide');
} else {
children1[index].classList.add('hide');
}
}
};
}()), false);