Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 放大弹出窗口内的按钮(未关闭)_Javascript_Jquery_Css_Magnific Popup - Fatal编程技术网

Javascript 放大弹出窗口内的按钮(未关闭)

Javascript 放大弹出窗口内的按钮(未关闭),javascript,jquery,css,magnific-popup,Javascript,Jquery,Css,Magnific Popup,我在一个有图库页面的网站上工作,使用放大弹出插件。客户带着巨大的“标题”回来,更像是关于每张图片的故事 我在MFP中使用了title函数来创建和显示标题。但是我需要显示/隐藏标题,作为一个层直接放置在图像上,具有绝对位置 我已经将所有这些都准备好了——修改了MFP js文件,将其写入名为MFP description的div中——单击该div时,应向标题div添加一个新类,并显示块——但我在图像窗口中创建的按钮没有任何效果。我猜MFP脚本中有什么东西阻止了这一切,但我不知道是什么 页面如下: 要

我在一个有图库页面的网站上工作,使用放大弹出插件。客户带着巨大的“标题”回来,更像是关于每张图片的故事

我在MFP中使用了title函数来创建和显示标题。但是我需要显示/隐藏标题,作为一个层直接放置在图像上,具有绝对位置

我已经将所有这些都准备好了——修改了MFP js文件,将其写入名为MFP description的div中——单击该div时,应向标题div添加一个新类,并显示块——但我在图像窗口中创建的按钮没有任何效果。我猜MFP脚本中有什么东西阻止了这一切,但我不知道是什么

页面如下:

要显示的代码:

$(".mfp-content").click(function() {
var target = $( event.target );
if (target.is(".mfp-description")) {
$(this).addClass("visible");
};
});
CSS将显示:

.mfp-title {
text-align: left;
font-size: .9em;
line-height: 1.3em;
color: #333;
word-wrap: break-word;
padding: 1em 40px 1em 1em; 
background: white;
position: absolute;
bottom: 100%;
display: none;
}
.mfp-title.visible {
display: block;
}
非常感谢大家的帮助!
谢谢

听起来您正试图在点击事件出现在页面上之前将其绑定到.mfp标题

您需要:

在弹出窗口初始化后运行自定义JavaScript查看中可用的回调

修改单击事件,使其不依赖于DOM中现有的元素

对于2,它将类似于:

$(document.body).on('click', '.mfp-description', function(e) {
    $(this).parent().find('.mfp-title').toggleClass('visible');
});

您提到您定制了您的放大版。我会避免直接修改插件代码:这将使调试变得困难,并且在将来进行更新是一件痛苦的事情。使用插件内置的回调,即在放大镜的“打开前”或“打开事件”中添加标记。

先生,您是一位绅士。。。非常感谢。我想知道这是否是因为这个类在DOM中还不存在,但是缺少js的知识来检查这个。。。哦,我也会利用公开赛,这是一个很好的建议。再次感谢!