Jquery添加到要在新选项卡中打开的链接
我正在帮助一位客户建立WooCommerce WordPress网站,当你点击分类页面上的产品图片/链接时,他们会在新的标签页中打开它。我一直在尝试使用jquery来添加这个,但没有成功。我是jquery的新手,希望得到任何帮助 HTML:Jquery添加到要在新选项卡中打开的链接,jquery,wordpress,woocommerce,Jquery,Wordpress,Woocommerce,我正在帮助一位客户建立WooCommerce WordPress网站,当你点击分类页面上的产品图片/链接时,他们会在新的标签页中打开它。我一直在尝试使用jquery来添加这个,但没有成功。我是jquery的新手,希望得到任何帮助 HTML: jsiddle:您不需要jquery来完成此任务……只需将其添加到您的链接中: 您的目标是产品li a元素,而不是在其上添加属性。您当前的代码只在单击时添加属性,但您希望在单击之前添加属性。您已经有了一个很好的答案,您的问题可能不清楚,但是如果您确实想使用
jsiddle:您不需要jquery来完成此任务……只需将其添加到您的链接中:
您的目标是
产品li a
元素,而不是在其上添加属性。您当前的代码只在单击时添加属性,但您希望在单击之前添加属性。您已经有了一个很好的答案,您的问题可能不清楚,但是如果您确实想使用jQuery,我建议您这样做:
我不知道在WP文件中哪里可以找到这个链接。这就是我转向jQuery的原因。我非常熟悉HTML/CSS以及如何添加target=“\u blank”。此外,还有超过1000种产品可以添加此功能。因此,即使我知道链接在哪里,那也需要很多时间。如果您只需要添加target属性,请使用以下命令:
$('ul.products a').attr('target','u blank')代码>@BrentNicolet你能具体说明什么不起作用吗?控制台中有错误吗?控制台中没有错误。而不起作用的是,当单击图像/链接时,它没有在新选项卡中打开。不,代码中还有其他javascript错误。这段代码使javascript无法顺利运行。您有一个未定义的不是关于flexslider
和prettypto
的函数。脚本中的包装也是从开始包装html,我不知道为什么它可以在JSFIDLE中工作,但不能在wordpress站点中工作。
<ul class="products">
<li class="post-6568 product type-product status-publish has-post-thumbnail first sale shipping-taxable purchasable product-type-simple product-cat-designer-watch-special product-tag-tw-steel instock"> <a href="http://harmonyjewellers.ca/product/tw-steel-7823/">
<img src="http://harmonyjewellers.ca/wp-content/uploads/2014/11/7823595-400x400.jpg" class="attachment-shop_catalog wp-post-image" alt="7823$595" height="400" width="400">
<h3>TW Steel (#7823)</h3>
<span class="price"><del><span class="amount">$1,190.00</span></del> <ins><span class="amount">$714.00</span></ins></span>
</a>
</li>
</ul>
$(document).ready(function () {
var productLinks = $('ul.products img').find('a');
prodcutLinks.click(function () {
$(this).attr("target", "_blank");
});
});
<ul class="products">
<li class="post-6568 product type-product status-publish has-post-thumbnail first sale shipping-taxable purchasable product-type-simple product-cat-designer-watch-special product-tag-tw-steel instock">
<a href="http://harmonyjewellers.ca/product/tw-steel-7823/" target="_blank">
<img src="http://harmonyjewellers.ca/wp-content/uploads/2014/11/7823595-400x400.jpg" class="attachment-shop_catalog wp-post-image" alt="7823$595" height="400" width="400"/>
<h3>TW Steel (#7823)</h3>
<span class="price">
<del><span class="amount">$1,190.00</span></del>
<ins><span class="amount">$714.00</span></ins>
</span>
</a>
</li>
</ul>
$(document).ready(function () {
$('.products li a').attr('target', '_blank');
});
$(document).ready(function () {
$('ul.products img').click(function () {
var productLinks = $(this).closest('a').attr('href');
window.open(productLinks, '_blank');
window.focus();
});
});