我们使用FancyZoom在屏幕上生成标准的JavaScript弹出效果。我不能在我的FancyZoom弹出窗口中使用JQuery吗?
我们希望使用JQuery来响应用户点击以更改FancyZoom为用户弹出的区域内的某些颜色(使用.attr)。
(在下面的代码示例中,我用一个简单的alert
代替了所有.attr的东西,只是为了说明这一点。Bar.png是一个黄金矩形,点击时应该显示Hello World,点击“Test”显示fanzy弹出)
如果我们把bar.png这样弹出外,它响应当我们点击它预计:
<script type="text/jscript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="js/fancyzoom.js"></script>
<script>
$(document).ready(function() {
$('#foo').on({ 'click': function() { alert('hello world'); } });
});
</script>
</head>
<body>
<a id="myFancyZoomPopup" href="#Test"><span>test</span></a>
<div id="Test">
<p> this is some text in the popup</p>
</div>
<img id="foo" src="i/bar.png" alt="asdf"/>
<script type="text/javascript">
$('#myFancyZoomPopup').fancyZoom({ directory: 'i'});
</script>
</body>
但是,如果我们把它放在我们想要它 - 的FancyZoom弹出面板里面 - 就像这样,我们的警报不火:
<script type="text/jscript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="js/fancyzoom.js"></script>
<script>
$(document).ready(function() {
$('#foo').on({ 'click': function() { alert('hello world'); } });
});
</script>
</head>
<body>
<a id="myFancyZoomPopup" href="#Test"><span>test</span></a>
<div id="Test">
<p> this is some text in the popup</p>
<img id="foo" src="i/bar.png" alt="asdf"/>
</div>
<script type="text/javascript">
$('#myFancyZoomPopup').fancyZoom({ directory: 'i'});
</script>
</body>
结果:没有“世界你好”当我们点击黄金矩形。
FancyZoom可能在图像上分层放置东西。你有没有检查是否是这种情况? – 2012-04-27 11:56:53
@JamieDixon不,我不认为这是事实。下面的答案似乎钉住它 – hawbsl 2012-05-03 16:49:08