我正在使用exhibit-api.js
和D3.js
我遇到的问题是我的地图中的map-lens
我提供了超链接。直到它从hyperlink
打开新窗口或新页面。但我需要的是在jQuery
弹出窗口中打开页面。
我已经尝试了所有内容,但javascript无法找到<a>
标记id
或class
我做错了什么?
我尝试了什么:
以下代码行正在运行但它在新窗口中打开页面,我需要的是弹出窗口。
<a id="file" data-ex-href-content=".url" onclick="javascript:window.open('this.href','_blank','height=300;width=300;');">Interest Graph</a>
<script type="text/javascript">
$('#display').popupWindow({
centerScreen:1
})
</script>
以下是我的code
答案 0 :(得分:1)
基于你的插件,我创建了这个PLUNK example,我相信它具有理想的效果。请检查。
<script type="text/javascript">
$(document).ready(function () {
$("#dialog").dialog({ autoOpen: false });
$("#hlOpenMe").click(
function () {
$("#dialog").dialog('open');
return false;
}
);
});
</script>
答案 1 :(得分:0)
您希望在要绑定它的元素存在之前尝试绑定click事件。请记住,镜头弹出窗口是由动态展览创建的,所以如果你是$(&#34; #display&#34;)。bind(&#34;点击&#34;)然后有人点击链接,然后事件将被绑定到镜头模板中的元素 而不是实际的弹出式镜头。解决这个问题的一种方法是使用jquery的事件委托机制,例如分配类&#34; popopen&#34;到镜头模板中的链接,然后使用$(&#39; body&#39;)。on(&#34; click&#34;,&#34; .popopen&#34;,function(){your handler} )。这样,jquery将触发任何.popopen元素上的click事件,即使它是在进行事件绑定后创建的。