我們使用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