2013-05-15 59 views
9

我试图找到一个插件或简单的脚本,通过单击按钮在弹出窗口中打开文件。这用于工作,但与所有的jQuery更新(即使与迁移文件),这不再起作用。jQuery函数打开新窗口中的链接

我发现这一点,但是这将打开弹出式窗口,也重定向到文件网址:

$(document).ready(function() { 
$('.popup').click(function(event) { 
    window.open($(this).attr("href"), "popupWindow", "width=600,height=600,scrollbars=yes"); 
}); 
}); 

什么办法让一个简单的弹出?它需要有滚动条,最好是可调整大小。我已经看到很多模态框的帖子,但是没有完成我所需要的。弹出框有它自己的设计,并且有更多的内容比适合模式。

我也想避免添加任何额外的标记。最好只添加一个类,就像上面的例子一样。

回答

26

试试这个,

$('.popup').click(function(event) { 
    event.preventDefault(); 
    window.open($(this).attr("href"), "popupWindow", "width=600,height=600,scrollbars=yes"); 
}); 

你必须包括jQuery的引用来解决这个, 这里是工作SAMPE http://jsfiddle.net/a7qJt/

+0

没有工作,弹出窗口将不会打开 – jenhan

+0

@jenhan:看样品共享 –

+0

感谢Chamika。我有jQuery引用。我认为这是一个IE问题。它在Chrome和Firefox中工作。 – jenhan

0

尝试在点击回调添加return false;这样的 -

$(document).ready(function() { 
    $('.popup').click(function(event) { 
     window.open($(this).attr("href"), "popupWindow", "width=600,height=600,scrollbars=yes"); 
     return false; 
    }); 
}); 
+0

没有工作,弹出窗口根本不打开:( – jenhan

+0

@jenhan你有任何机会阻止弹出窗口吗? – naththedeveloper

+0

不,我已经检查过,他们没有被阻止。 – jenhan

0
$(document).ready(function() { 
$('.popup').click(function(event) { 
    window.open($(this).attr("href"), "popupWindow", "width=600,height=600,scrollbars=yes"); 
}); 
}); 
2

仅限按钮点击事件。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" type="text/javascript"></script> 
     <script language="javascript" type="text/javascript"> 
      $(document).ready(function() { 
       $("#btnext").click(function() {      
        window.open("HTMLPage.htm", "PopupWindow", "width=600,height=600,scrollbars=yes,resizable=no"); 
       }); 
      }); 
</script>