ホームページ >ウェブフロントエンド >htmlチュートリアル >[Jianghu Baixiaosheng] 私が書いた JS コードは Firefox では互換性がありません。簡単な互換性を教えてください。method_html/css_WEB-ITnose。

[Jianghu Baixiaosheng] 私が書いた JS コードは Firefox では互換性がありません。簡単な互換性を教えてください。method_html/css_WEB-ITnose。

WBOY
WBOYオリジナル
2016-06-24 12:08:411354ブラウズ

これはコードの一部にすぎません。これは IE で実装された myli[i].getElementsByTagName("a").item(0).style.backgroundColor="red"; です。この効果はFirefoxでも実現したいので、 myli[i].getElementsByTagName("a").item(0).bgColor="red"; という文を変更して試してみましたが、うまくいきませんでした。緊急の使用、オンラインでのアドバイスをお待ちしています。解決したらすぐに投稿します。 ! ! !


ディスカッションに返信 (解決策)

赤を特定の色 #ff0000; に変更してみます

myli[i].getElementsByTagName("a").item(0) を
myli[i] に変更します。 getElementsByTagName("a")[0]

いいえ、特定の色に変更してください #ff0000; 試してみてください

それも機能しません、主人公。 。 。 ?。 。 。 。 myli[i].getElementsByTagName("a").item(0) は
myli[i].getElementsByTagName("a")[0] に変更されました

JScript コード
var myDate=new Date();
var day= myDate.getDate();
for(var i=0;i [i].get……

if(myli[i].getElementsByTagName("a").item(0) .innerHTML==day innerHTML と innerTEXT は、IE で使用される標準の dom 属性ではありません

myli[ i].getElementsByTagName("a").item(0) は

myli[i].getElementsByTagName("a")[0 に変更されました]
これを試してください
Firefox では問題ありません。 len19900623 からの引用です

var i=0;i< ;=34;i++){

if(myli[i].getElementsByTagName("a").item(0).innerHTML==day)
{myli[i].get……


. 5555555555555555555 フックからの返信:


myli[i].getElementsByTagName("a")[0] に変更します

これを試してください


myli[i].getElementsByTagName("a").item(0).style.dispaly ="ブロック";
前に追加してください。 。

innerHTML と innerTEXT は Firefox では認識されないと言いましたが、これら 2 つの属性は IE でのみ認識されます

つまり、次の JS は間違っています。 、たとえ正しくても実装されないですよね!おっとっと!おそらく、代わりに jquery を使用して必要なものを取得できます。


if(myli[i].getElementsByTagName("a").item(0).innerHTML==day)

yellow";}

兄弟、この文は正常に実行されました。Firefox で下の色がなぜ表示されるのかがわかりました。変更できないのは、Firefox が myli[i].getElementsByTagName("ul").length を認識しないためです。つまり、下に ul があってもなくても、その長さは 0 です。 innerHTML と innerTEXT は Firefox では認識されないと言いましたが、これら 2 つの属性は IE でのみ認識されます

つまり、次のことは間違っています。それは実装されないでしょう!おっとっと!おそらく、代わりに jquery を使用して必要なものを取得できます。

うまくいきません。 。 。 Firefox では myli[i].getElementsByTagName("ul").length という文が認識されません。下に ul があるかどうかに関係なく、長さは 0 になります。何か良い解決策はありますか? ? myli[i].getElementsByTagName("a").item(0).style.dispaly="block";
前にこれを追加してみてください。 。

私のコードにはエラーはなく、Firefox はそれを認識します。ただし、私のページには他のものに関連する最大の ul スタイルも定義されているため、その ul は他の JS ファイルによっても制御されます。 Firefox は 2、IE は 2 ではありません、スタイルが変更されました、それでいいです、はははははははははははは

これは少しわかりにくいので、jquery を直接使用しましょう。独自の JavaScript を使用すると負荷が大幅に増加します。また、myli[..] にタグがないと大惨事になることも考慮する必要があります。インストールされている場合、getElementsByTagName("a") が取得できないためエラーが報告されます

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。