0

所以我有一个 JS 函数,当点击多个 html href 时运行。也就是说,我有大约 4 个不同的 href 看起来与此类似:

<a href='#' onClick="myPopup()">New Window</a>

我的 JS 看起来像这样:

<script language="javascript" type="text/javascript"> 
<!--
function myPopup() 
{
    window.open( "account_edit.php", "myWindow", "status = 1, height = 300, width = 300, resizable = 0" )   
}
//-->
</script>

我的意思是,我不想再重写那个脚本块 3 次。有没有办法让脚本告诉单击了哪个href,然后打开其各自的页面?显然正常的href不在图片中,否则我会这样做。谢谢您的帮助!

4

3 回答 3

4
function myPopup(target) 
{
    window.open( target, "myWindow", "status = 1, height = 300, width = 300, resizable = 0" )   

然后从每个<a>具有不同目标的调用它:

<a href='#' onClick="myPopup('account_edit.php')">New Window</a>

Bonus Track:你可以用 jquery 让它不显眼(更干净!)

HTML:

<a href="account_edit.php">New Window</a>

JS:

$(function(){
    $('a').click(function(e){
        e.preventDefault(); //prevents browser from following link
        window.open( this.href, "myWindow", "status = 1, height = 300, width = 300, resizable = 0" )
    });
});

注意:如果您不指定 fqdn,浏览器会将您当前的 URL 路径添加到 href(因此,如果您从 abc.com/test/test.htm 调用它,弹出窗口将在 abc.com/test/account_edit 中打开.php)

于 2013-09-27T15:58:08.287 回答
1

好吧,你可以通过参数传递一些独特的东西:

<a href='#' onClick="myPopup('link1')">New Window</a>

然后在这里:

<script language="javascript" type="text/javascript"> 
function myPopup(link) 
{
    alert('you cliked on link '+link); //or do whatever your want
}

</script>
于 2013-09-27T15:58:59.810 回答
1

只需在您的 javascript 函数调用中传递一些参数,如新窗口、新窗口等

于 2013-09-27T16:00:45.427 回答