gpt4 book ai didi

javascript - jQuery 冒泡 - MouseOut 问题

转载 作者:行者123 更新时间:2023-12-02 16:29:36 26 4
gpt4 key购买 nike

Demo Here

我想要实现的目标:

  1. 鼠标悬停时 - 将显示共享图标。

  2. 单击共享图标时,将显示新 Div

问题

当鼠标移出共享图标时“新 Div 不应关闭,必须显示”。

当大图像的 MouseOut 完成时“新 Div 必须隐藏”

HTML:

<div class="article_videos_item clrfix">
<div class="article_videos_item_img">
<span class="field-content">
<a href="#">
<img typeof="foaf:Image" src="http://www.joomlaworks.net/images/demos/galleries/abstract/7.jpg" width="340" height="226">
<div class="socialIconsWrap">
<div class="social__sharing__icon"> Click Me
<div class="social__sharing__content">
On MouseOut of Share Icon, still i have to be shown
</div>
</div>
</div>
</a>
</span>
</div>
</div>

<h2 style="display:block; border:2px solid; padding:5px; float:left">
What Iam trying to Achieve : <br/>
#1. On Mouse Hover - Share Icon will be displayed. <br/>
#2. On Click of Share Icon, New Div will be Shown
<br/>
<b>Issue</b>
<br/>
When MouseOut on Share Icon "New Div should not close, it has to be displayed" .
<br/>
When the MouseOut is Done for Big Image "New Div has to Hide"

</h2>

JS:

$(function(){
gwt__features.init();
});
var social__hover__select = $('.article_videos_item .article_videos_item_img'),
social__sharing__icon = $('.socialIconsWrap .social__sharing__icon'),
social__sharing__content = $('.social__sharing__content');


var gwt__features = ({
social__icons : function(){

},
social__hover : function(){
$(social__hover__select).on('mouseover',function(){
$(social__sharing__icon).show();
});
},
social__out : function(){
$(social__hover__select).on('mouseout',function(){
$(social__sharing__icon).hide();
$(social__sharing__content).hide();
});
},
social__click : function(){
$(social__sharing__icon).on('click',function(e){
e.preventDefault();
e.stopPropagation();
$(social__sharing__content).show();
});
},
init : function(){
this.social__icons(),
this.social__hover(),
this.social__out(),
this.social__click();
}
});

感谢您的帮助!

最佳答案

我已经在代码中实现了一个新条件。如果单击该图标,则 newDiv 将设置为 1 并且将显示 newDiv。如果没有点击该图标,则不会创建 newDiv。

$(function(){
gwt__features.init();
});
var social__hover__select = $('.article_videos_item .article_videos_item_img'),
social__sharing__icon = $('.socialIconsWrap .social__sharing__icon'),
social__sharing__content = $('.social__sharing__content');

var newDiv = 0;


var gwt__features = ({
social__icons : function(){

},
social__hover : function(){
$(social__hover__select).on('mouseover',function(){
$(social__sharing__icon).show();
});
},
social__out : function(){
$(social__hover__select).on('mouseout',function(){
if(newDiv == 0){
$(social__sharing__icon).hide();
$(social__sharing__content).hide();
} else {
$(social__sharing__icon).hide();
$(social__sharing__content).show();
}
});
},
social__click : function(){
$(social__sharing__icon).on('click',function(e){
e.preventDefault();
e.stopPropagation();
$(social__sharing__content).show();
newDiv = 1;
if( newDiv == 1){
$(social__sharing__content).show();
}
});
},
init : function(){
this.social__icons(),
this.social__hover(),
this.social__out(),
this.social__click();
}
});

Working demo

如果有任何需要改进的地方,请告诉我。

关于javascript - jQuery 冒泡 - MouseOut 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28426564/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com