是否有一种更动态的方式来使用php和javascript调用多个标签

时间:2015-09-17 19:55:43

标签: javascript php jquery html

大家好我试图找到一种更动态的方法,在同一个标​​签中一次打开多个弹出窗口。这是我的代码如下。它工作正常,但如果你有10个标签怎么办。任何建议表示赞赏。

   <script>

function openwindow(){
    window.open("https://www.facebook.com/sharer/sharer.php?u=<?=urlencode($article['link'])?>&p[title]=<?=urlencode($article['a_headline'])?>&display=popup","width=100,hieght=100");
}

function openwindow1(){
    window.open("https://twitter.com/intent/tweet?text=<?=urlencode($article['a_headline'])?>&url=<?=urlencode($article['shorten'])?>&related=&via=proofEurope<?=urlencode($ks)?>","width=100,hieght=100");
}
</script>

<li><a href="javascript: openwindow()" rel="nofollow" target="_blank"><img src="<?=ASSETS?>/www/img/news/fb.png" /></a></li>

<li><a href="javascript: openwindow1()" rel="nofollow" target="_blank"><img src="<?=ASSETS?>/www/img/news/twt.png" /></a></li>

1 个答案:

答案 0 :(得分:1)

首先,你不应该在你的href中使用javascript。它有效,但这不是“适当”的方式。将href设置为#并将javascript放入onclick:

<a href='#' onclick='openwindow();'>my link</a>

您也可以在onclick中调用window.open ...

<a href='#' onclick="window.open('http://example.com');">my link</a>

注意我必须双引号包含单引号的字符串,以避免转义引号。

您拥有网址和图片的逻辑组合。在阵列中匹配它们。我将图像作为密钥,将URL作为值,如:

$links = array(
    "fb.png" => "https://www.facebook.com/sharer/sharer.php?u=".urlencode($article['link'])."&p[title]=".urlencode($article['a_headline'])."&display=popup",
    "twt.png" => "https://twitter.com/intent/tweet?text=".urlencode($article['a_headline'])."&url=".urlencode($article['shorten'])."&related=&via=NewsweekEurope".urlencode($ks),
);

现在,您可以遍历数组:

foreach($links as $img=>$url)
    print "<a href='#' onclick=\"window.open('$url')\"><img src='$img'></a>";