Change body bgcolor on hovering a "a" link
-
Hi.
I have put this script in "Custom <head> content" but only the " 'a' links" of nav change the color of body background. The others " 'a' links" in the "#main-region" don't work.Seems there is a problem between the dynamic content loading and my event jquery, right?
<script>
jQuery(document).ready(function(){
jQuery("a").hover(function(){
jQuery("body").css('background-color','red');
});
jQuery("a").mouseleave(function(){
jQuery("body").css('background-color','white');
});});
</script> -
Hey baumiao!
Right you are :)Try it like this:
<script> jQuery(document).on("mouseenter", "a", function(){ jQuery("body").css("background-color", "red"); }); jQuery(document).on("mouseleave", "a", function(){ jQuery("body").css("background-color", "black"); }); </script>
You see, I'm writing it a bit differently, doing so called "delegated" event binding. Here is a description about it:
https://learn.jquery.com/events/event-delegation/ -
@arminunruh cant seem to get this to work, is there anything in the CSS i need to add?
-
Before you post:
- When using a WordPress Cache plugin, disable it or clear your cache.
- Update Lay Theme and all Lay Theme Addons
- Disable all Plugins
- Go to Lay Options → Custom CSS & HTML, click "Turn Off All Custom Code", click "Save Changes"
This often solves issues you might run into
When you post:
- Post a link to where the problem is
- Does the problem happen on Chrome, Firefox, Safari or iPhone or Android?
- If the problem is difficult to explain, post screenshots / link to a video to explain it