【发布时间】:2013-06-12 16:08:06
【问题描述】:
我不知道如何将 target="_blank" 属性添加到 5 星评级徽章。
这是我插入网页的内容...来自 yelp。我将最后一行添加到脚本中以尝试添加属性,但它不会接受。但是,我可以让它在之前的 div 和之后的 img 上接受,而不是在锚标签上。
<div class="localsocialyelpreviews"><div id="yelp-biz-badge-fsc-N6ciVLIYpasN2FWN3Nxy9Q">Gina's Pizza & Pastaria</div><script type="text/javascript">
!function(doc, id){
var js;
var scriptElement = doc.getElementsByTagName("script")[0];
if (!doc.getElementById(id)) {
js = doc.createElement("script");
js.id = id;
js.src = "//dyn.yelpcdn.com/biz_badge_js/fsc/N6ciVLIYpasN2FWN3Nxy9Q.js";
scriptElement.parentNode.insertBefore(js, scriptElement);
}
} (document, "yelp-biz-badge-script-fsc-N6ciVLIYpasN2FWN3Nxy9Q");
$("div#yelp-biz-badge-fsc-N6ciVLIYpasN2FWN3Nxy9Q > a").attr("target","_blank");</script></div>
这就是最终发生的事情。没有目标属性:/
<div class="localsocialyelpreviews">
<div id="yelp-biz-badge-fsc-N6ciVLIYpasN2FWN3Nxy9Q"><a href="http://www.yelp.com/biz/ginas-pizza-and-pastaria-corona-del-mar"><img width="125" height="55" src="http://dyn.yelpcdn.com/extimg/fsc/N6ciVLIYpasN2FWN3Nxy9Q.png" alt="Gina's Pizza & Pastaria"></a></div>
<p><script type="text/javascript">
!function(doc, id){
var js;
var scriptElement = doc.getElementsByTagName("script")[0];
if (!doc.getElementById(id)) {
js = doc.createElement("script");
js.id = id;
js.src = "//dyn.yelpcdn.com/biz_badge_js/fsc/N6ciVLIYpasN2FWN3Nxy9Q.js";
scriptElement.parentNode.insertBefore(js, scriptElement);
}
} (document, "yelp-biz-badge-script-fsc-N6ciVLIYpasN2FWN3Nxy9Q");
$("div#yelp-biz-badge-fsc-N6ciVLIYpasN2FWN3Nxy9Q > a").attr("target","_blank");</script></p></div>
感谢任何见解。我尝试了许多不同的方法,并在 yelp 和 stackoverflow 中搜索了解决方案,但找不到答案。谢谢
【问题讨论】:
-
我还尝试延迟加载脚本,因为我意识到 Yelp 徽章不会立即加载,并且可能会在我的脚本加载后加载。所以,没有成功,我也试过这个...... $(".localsociallyelpreviews").delay(5000).find('a').attr("target","_blank");
标签: javascript yelp