此代码适用于除Internet Explorer(Opera,Firefox,Chrome ..)之外的所有主流浏览器每秒js问题都与IE有关。提前谢谢。
<script type="text/javascript">
function myFunction(nesto,param)
{
var str = nesto;
if (param == "latin")
{
str = str.replace(/Џ/g,"DŽ");
str = str.replace(/Љ/g,"LJ");
}
if (param == "cirilic")
{
str = str.replace(/DŽ/g,"Џ");
str = str.replace(/LJ/g,"Љ");
}
return str;
}
function konvertor(param) {
for (i=0;i<document.getElementsByName("jezik").length; i++) {
document.getElementsByName("jezik").item(i).innerHTML = myFunction(document.getElementsByName("jezik").item(i).innerHTML,param);
}
}
</script>
<button onclick="konvertor('latin')">latinica</button>
<button onclick="konvertor('cirilic')">cirilica</button>
<div name="jezik">DŽ LJ</div>
<div name="jezik">DŽ LJ</div>
答案 0 :(得分:1)
function konvertor(param) {
var len=document.getElementsByName("jezik").length;
for (i=0;i<len; i++) {
// use array access instead of item()
document.getElementsByName("jezik")[i].innerHTML = myFunction(document.getElementsByName("jezik")[i].innerHTML,param);
}
}
答案 1 :(得分:1)
getElementsByName仅在元素have a name-attribute(following the specification/DTD). Those are e.g. form-elements and images, but not <div>
- 元素时按名称提取元素。
您可以改为使用querySelectorAll():
document.querySelectorAll("*[name='jezik']")