在 $('html').click() 之外单击时关闭图像;与打开的图像冲突
Close image when clicked on outside $('html').click(); conflict with open image?
>我使用了一个简单的 css 和 js 来在单击图像时使用弹出图像显示图像,并在顶部关闭按钮以关闭图像。openimage 和 closeimage 都是 js 函数我已经实现为
打开图像功能为
function imgv(x,y,img)
{
document.getElementById('imgv_i2').src = img;
document.getElementById('imgv_i2').style.width = x;
document.getElementById('imgv_i2').style.height = y;
document.getElementById('imgv_i2').width = x;
document.getElementById('imgv_i2').height = y;
imgToMiddle('imgv_i2');
document.getElementById('imgv_i2').style.display = 'block';
}
关闭图像为
function closeimgv()
{
document.getElementById('imgv_i2').style.display = 'none';
document.getElementById('imgv_close').style.display = 'none';
}
事件为
<a href="javascript:void(0);" onclick="imgv(101,101,'image url');"><img src="image src"></a>
现在为了在外面单击时关闭图像,我已经使用了这些像
$('#imgv_i2').click(function(event){
event.stopPropagation();
});
$('html').click(function() {
if(document.getElementById('imgv_i2').style.display == 'block') {
closeimgv();
}
});
现在发生的情况是,当单击打开图像时,关闭图像功能也触发了如何使$('html').click();
在打开图像功能触发后绑定并在关闭图像功能后取消绑定功能。谢谢。
尝试
$(document).click(function(ev) {
//avoid clicks on image itself
if($(ev.originalTarget).is("whatever triggers image opening")) {return;}
if(document.getElementById('imgv_i2').style.display == 'block') {
closeimgv();
}
});
我建议您使用jquery插件进行厚框或弹出窗口,因为它们非常简单且易于实现和自定义。有很多开源插件可以尝试一下,它们确实提供了您要求的自定义类型!
相关文章:
- 如何使用url加载程序在webpack中导入多个图像
- nodejs-expressjs上传图像并显示它们
- 使用JSP从服务器检索和显示图像
- 角度:在ng重复上切换图像
- 插件导致Wordpress图像滑块中的JavaScript冲突
- JQuery图像悬停并单击冲突
- j查询日历与mootool图像滑块冲突
- 在 $('html').click() 之外单击时关闭图像;与打开的图像冲突
- 如何在 javascript 中检测两个图像之间的冲突
- 响应式图像区域地图与螺旋菜单冲突
- tinyMCE文本区域和图像管理器在同一页面上冲突
- 如何获取我的 x 和 y 值以检测 html5 画布中两个图像之间的冲突
- 冲突的脚本:当我将fancyBox脚本添加到html文档时,图像滑块出现故障
- 在jquery中检测两个图像之间的冲突
- 带有堆叠图像的悬停冲突
- jQuery脉动代码与滚动图像jQuery代码冲突
- jQuery是否验证冲突提交函数,而不是表单按钮(图像/超链接)
- 由于javascript冲突,无法上载图像
- 日期选择器和图像滑块冲突
- JQuery:在成功加载时显示图像,并与加载冲突