2016-11-29 9 views
0

私はこのコードに問題があります。Internet Explorerでjsを実行すると問題が発生する

var myIndex = 0; 
carousel(); 

function carousel() { 
var i; 
var x = document.getElementsByClassName("mySlides"); 
for (i = 0; i < x.length; i++) { 
    x[i].style.display = "none"; 
} 
myIndex++; 
if (myIndex > x.length) {myIndex = 1} 
x[myIndex-1].style.display = "block"; 
setTimeout(carousel, 3000); // Change image every 2 seconds 
} 

開発ツールでは、次の行が問題であると言います。私のサイトではJSを実行しません!だから私はそれがこの問題のためだと思います。私は、これは非常に基本的なものかもしれない知っている...残念ながら私はJS読み書きないです:(

var x = document.getElementsByClassName("mySlides"); 

エラーが

オブジェクトは、このプロパティまたはメソッドをサポートしていません

で素人されています誰かがこの上でいくつかの光を当てることができた場合

が大幅義務があるだろう...私の幸せはいつものようにすなわちで墜落したまで

- JS私は私のサイトはChromeとFirefoxの上の驚異を行うことについてとても幸せでした。それはそれで何かをしなければならない場合、私の文書型が

<!DOCTYPE html> 
<html> 

として宣言されているところで

任意の助けを事前に感謝し、私は開発しています

私のサイトはhttp://www.mylaundrywala.comです...私が述べたようにChromeとFirefoxの上で正常に動作します。

+2

あなたのIEのどのバージョンであるためにターンアラウンドように、コードの下に使用することができますか? 'getElementsByClassName'はIE9以上でのみ動作します。 – Nope

+0

バージョンは8 – user3526204

+0

Ohkです。そうすれば、私にこれに代わるものを教えてもらえれば素晴らしいでしょう。 – user3526204

答えて

1

古いIEのdoesntサポートgetByClassName:Document.getElementsByClassName() on MDN

Document.getElementsByClassName

いくつかのいずれも、ここでの回避策を提案しています。

あなたはこの

function getElementsByClassName(className) { var found = []; var elements = document.getElementsByTagName("*"); for (var i = 0; i < elements.length; i++) { var names = elements[i].className.split(' '); for (var j = 0; j < names.length; j++) { if (names[j] == className) found.push(elements[i]); } } return found; }

+0

ありがとうルペシュ。あともう一つだけ。これからどのように変数xを得ることができますか?申し訳ありませんが、私は素人です。しかし、私はそれはyです... – user3526204

+0

ねえ私はあまりにもそれを持っています。そして今、私のスライダーは8でうまく動作しています!ソリューションのためのおかげで@ルペシュDhadiwal – user3526204

関連する問題