Home > Article > Web Front-end > [Jianghu Baixiaosheng] The js code I wrote is not compatible under Firefox. I beg you for a simple way to make it compatible_html/css_WEB-ITnose
var myDate=new Date(); var day=myDate.getDate(); for(var i=0;i<=34;i++){ if(myli[i].getElementsByTagName("a").item(0).innerHTML==day) {myli[i].getElementsByTagName("a").item(0).style.backgroundColor="yellow";} if(myli[i].getElementsByTagName("ul").length > 0){ myli[i].getElementsByTagName("a").item(0).style.backgroundColor="red"; myli[i].getElementsByTagName("a").item(0).bgColor="red"; } } }This is just part of the code. The effect I have achieved now is myli[i].getElementsByTagName("a").item(0).style.backgroundColor="red"; it has been implemented under IE. Now I want to achieve this effect under Firefox, but I found that myli[i].getElementsByTagName("a").item(0).bgColor="red"; is not recognized. I changed this sentence and tried it, but it didn't work either. , Urgent need, wait for advice online, and post immediately after solving the problem! ! ! !
change red to a specific color #ff0000; try
myli[i].getElementsByTagName ("a").item(0) changed to
myli[i].getElementsByTagName("a")[0]
No, please change it to a specific color#ff0000; Try it
That won’t work either, hero. . . ?. . . . myli[i].getElementsByTagName("a").item(0) changed to
myli[i].getElementsByTagName("a")[0]
JScript code
var myDate=new Date();
var day=myDate.getDate();
for(var i=0;i<=34;i ){
if(myli[i].getElementsByTagName("a") .item(0).innerHTML==day)
{myli[i].get…… =day innerHTML and innerTEXT These are not standard dom attributes used by IE
myli[i].getElementsByTagName("a").item(0) changed to
Brother, it works fine under Firefox... My current problem is the color change. ? . . Quoting the reply from the poster len19900623:
JScript code
var day=myDate.getDate();
for(var i=0;i<=34 ;i ){
if(myli[i].getElementsByTagName("a").item(0).innerHTML==day)
{myli[i].get……
… ...
It doesn’t work. . . 55555555555555555555 Reply from 2nd floor:
myli[i].getElementsByTagName("a"). Change item(0) to
Try this
myli[i].getElementsByTagName("a"). item(0).style.dispaly="block";
Try adding this before. .
In other words, the js is wrong. The following will not be implemented regardless of whether you are right or not! oops! You can probably use jquery to get what you want!
if(myli[i].getElementsByTagName("a").item(0).innerHTML==day)
{myli[i].getElementsByTagName("a").item(0) .style.backgroundColor="yellow";}
Brother, this sentence was executed successfully. Under Firefox, I now know why the color below cannot be changed. It is because Firefox does not recognize myli[i].getElementsByTagName. ("ul").length This sentence, regardless of whether I have ul below, its length is 0! I told you that innerHTML and innerTEXT are not recognized by Firefox. These two attributes are only recognized by IE. The above if is not true at all.
In other words, the js is wrong. The following does not concern you. Whether it’s right or not, it won’t be implemented! oops! You can probably use jquery to get what you want instead!
Doesn’t work. . . Firefox does not recognize the sentence myli[i].getElementsByTagName("ul").length. Regardless of whether there is ul below, the length is 0. Is there a good solution? ? myli[i].getElementsByTagName("a").item(0).style.dispaly="block";
Try adding this in front. .
It sounds a bit confusing, so let’s just use jquery directly. It’s confusing. Using original javascript increases a lot of workload, and we also have to consider that if there is no a tag in myli[..], It’s a failure and an error will be reported because getElementsByTagName("a")
cannot be obtained.