2016-05-23 5 views
1

ich ein seltsames Problem habe - haben ein div in Wrapper auf einen Klassennamen hier zugeordnet:HTML/Jquery: DIV nicht Hover erkennen, selbst wenn Z-Index auf höchste gesetzt?

echo '<div class="about">Z&S</div>'; 

In meinem Stylesheet, das Wrapper um dieses div hat einen Z-Index von -1, aber ich gegeben habe. über einen Z-Index von 5 (also wird es definitiv über allen anderen Elementen sein). Ich habe sogar versucht, den Z-Index zu löschen, der meinem Wrapper gegeben wurde, aber mein Problem besteht immer noch.

Mein Problem ist, dass ich versuche Inhalt div auf schweben zu ändern, um dieses Skript:

$(document).ready(function() { 
    console.log("LOADED SCRIPT.JS"); 

    //Change creds text 
    $(".about").hover(
     function() // on mouseover 
     { 


    console.log("RAN IT"); 
      $(this).text("This is the new html"); 
     }, 

     function() // on mouseout 
     { 
      $(this).text("Z&Snnn"); 

     }); 

}); 

Ich weiß das, weil „LOADED“ ausgeführt wird gedruckt wird, zu trösten. Allerdings kann ich den Text des Divs nicht ändern, da .about den Hover nicht erkennt. Das Protokoll in der Hover-Funktion wird nicht gedruckt.

Ich hatte noch nie zuvor - warum wird mein div erkennen schweben?

Bearbeiten- ich versucht habe:

$(".about").on("mouseover", function(){ 
console.log("HELLO"); 
}) 

und

$(document).on("mouseover",".about", function(){ 
      console.log("RAN IT"); 
      $(this).text("This is the new html"); 
}); 

Nichts wird gedruckt, wenn ich den Mauszeiger über sie. Ich habe gelöscht auch den z-Index auf meinem Wrapper, ob das etwas

+0

'$ (document) .on (" mouseover ",". About ", function() {....}) versuche das Ereignis an Dokument delegieren –

+0

Ich denke, es ist eher ein Ereignisdelegierungsproblem eher der zindex –

+0

kann Sie erstellen eine Demo auf Jffiddle? – RRR

Antwort

0

beeinflussen sollten Sie $(".about").on("mouseover", function(){}) vielleicht versuchen können, aber ich denke, wenn man Wrapper -1 z-index, unabhängig davon, was Ihr Kind z-index ist, jedes Geschwisterelement Wrapper mit für mouseenter und mouseout .I ein z-index > -1 wird über Kinder sein noch Ihren Wrapper ist (glaube ich, sorry wenn ich das falsch bin)

+0

Ich habe meine Frage aktualisiert - Ich habe versucht, die 2 Möglichkeiten vorgeschlagen, aber die div ist immer noch nicht registrieren Hover – skyguy

+0

es ist schwierig zu bestimmen, ohne zu wissen, was Sie sonst getan haben, um das Dokument wirklich. Was ist das CSS des div? Es kann sein, dass das div tatsächlich wirklich klein ist und der Text gerade überläuft. Versuchen Sie, diesem div und einem Rahmen eine Breite/Höhe hinzuzufügen, damit Sie es visuell sehen können. Sie könnten auch versuchen, .html() anstelle von .text(), aber das wird nicht helfen, wenn Ihre console.log() nicht offensichtlich feuern wird. – hamham

0

z-index mit nur position property.Use hover() Methode mit zwei Parametern übergeben als Funktion versucht, verwendet wird, unter Verwendung von Schwebe, wenn das hilfreich für Sie ist, dann überprüfen Sie es auf diese link