2017-02-07 2 views
0

J'ai donc un div qui comprend un formulaire avec de nombreux champs de saisie.Comment modifier l'opacité d'arrière-plan correctement

Si je clique sur un bouton, tous les champs de saisie sont désactivés et l'opacité de ces champs de saisie devrait se situer autour de 0,2.

également une image pops un peu haut, (il style.display a été mis à none, et maintenant onclick-block) Ainsi, alors que l'opacité des éléments se parfaitement inhibés et rendues transparentes, l'onclick de l'image qui apparaît doesn » t fonctionne, s'il y a un champ de saisie en arrière-plan.

Existe-t-il un moyen de ne pas compliquer la disparition des champs de saisie tout en étant capable d'appuyer sur l'image à chaque pixel?

<div><img id="i" style="display:none" onclick=dothis(event) src="dsds.png" /></div> 
<div id="d"><input id="c" onclick="dis()" type=button value="hey"><input id="f" type=text ></div> 

<script> 

function dis(){ 
document.getElementById("i").style.display="block"; 
document.getElementById("d").style.opacity="0.2"; 
document.getElementById("c").disable=true; 
document.getElementById("f").disable=true; 
} 
+0

Vous avez oublié d'ajouter votre code à la question. – Justinas

+0

@Justinas code ajouté;) problème est s'il y a un champ d'entrée exactement à l'endroit de l'image en arrière-plan, je ne suis pas en mesure d'appuyer sur l'image, aussi pour des raisons étranges l'image devient transparente vous pouvez voir à travers elle, ne sais pas pourquoi –

+0

_ "l'onclick de l'image qui apparaît ne fonctionne pas" _ Vous ne savez pas quel est le problème? Pouvez-vous décrire "ne fonctionne pas"? Où 'dothis' est-il défini? – guest271314

Répondre

0

pour changer l'opacité sur un clic, vous pouvez utiliser jquery comme indiqué:

$(document).ready(function() { 
 
    $("#button").click(function(){ 
 
    $("#content_to_fade").css('opacity', '0.2'); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script> 
 
<div> 
 
\t <p id="content_to_fade">Test</p> 
 
\t <button id="button">Button</button> 
 
</div>

+0

le problème n'est pas que je ne sais pas comment définir l'opacité xD le problème est que quand leur est un champ d'entrée en arrière-plan de l'image avec l'opacité 0.2, vous n'êtes pas en mesure d'appuyer sur l'image à cet endroit. Il semble que l'opacité est infligée par les événements, comme indiqué ici [link] (http://stackoverflow.com/questions/272360/does-opacity0-have-exactly-the-same-effect-as-visibilityhidden) b –

+1

@ AndroidAmatuer99 si vous utilisez bootstrap vous devez définir un z-index à l'image qui est plus élevé que l'un des champs d'entrée (avait quelque chose comme ça en utilisant bootstrap les derniers jours que l'entrée n'était pas superposée avec z-index 0). peut-être que ça aide – mtizziani

+0

@mtizziani c'est le z-index que je cherchais –