Maison >interface Web >tutoriel HTML >En utilisant des images comme étiquettes, l'attribut for ne fonctionne pas dans la production de pages IE _HTML/Xhtml_Web

En utilisant des images comme étiquettes, l'attribut for ne fonctionne pas dans la production de pages IE _HTML/Xhtml_Web

WBOY
WBOYoriginal
2016-05-16 16:41:421519parcourir

Par exemple :

Copier le code
Le code est le suivant :



L'effet que nous espérons obtenir est : Cliquez sur "Banque de Chine", la case à cocher sera cochée (ou annulée). Il n'y a aucun problème dans FireFox, CHROME et d'autres navigateurs, mais le navigateur IE n'aime pas cela.

La solution est d'utiliser JS :

Copiez le code
Le code est le suivant :

window.onload = function(){
if(document.all && navigator.appVersion.indexOf("MSIE")>-1 && navigator.appVersion.indexOf("Windows") >-1 )
{
var a = document.getElementsByTagName("label");
for(var i=0,j=a.length;i if(a[ i].hasChildNodes && a[i].childNodes.item(0).tagName == "IMG")
{
a[i].childNodes.item(0).forid = a [i]. htmlFor;
a[i].childNodes.item(0).onclick = function(){
var e = document.getElementById(this.forid); ){
case "radio": e.checked|=1;break;
case "checkbox": e.checked=!e.checked;break
case "text": case "mot de passe" : case "textarea ": e.focus();
}
}
}
}
}

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn