我有一个类似的链接:
<a rel="Test Images" class="thickbox preview_link" href="http://www.localhost.com:8080/testwp/wp-content/uploads/2013/12/2013-10-02_1728.png">
我需要在同一页面上加载的javascript文件中获取该图像的URL。
我尝试过类似的事情:image_src = jQuery('a[class=thickbox preview_link]').attr('href');
但我得到的是Uncaught Error:语法错误,无法识别的表达式:控制台中的[class = thickbox preview_link]。
我在网站上使用jquery 1.10.2
答案 0 :(得分:1)
你会这样做:
jQuery('a.thickbox.preview_link').attr('href');
您的属性选择器语法不正确,因为它需要用引号('a[class="thickbox preview_link"]'
)包装它们的空间,但是您总是可以使用类选择器,它大多比属性选择器快,而且顺序不是也很重要。
答案 1 :(得分:0)
thickbox preview_link
实际上是 2 类令牌,因此您正在寻找a.thickbox.preview_link
或(针对该特定属性)a[class="thickbox preview_link"]
(注意引号)< / p>
image_src = jQuery('a.thickbox.preview_link').attr('href');
// or
image_src = jQuery('a[class="thickbox preview_link"]').attr('href');
答案 2 :(得分:0)
万一你需要它,这是vanilla Javascript版本
获取图像
var image = document.getElementsByClassName('thickbox preview_link');
获取(第一张图片的)href
var image_href = image[0].getAttribute('href');
更好的版本
// Declare the image_href variable
var image_href;
// Getting a nodeList of all the applicable images
var image = document.getElementsByClassName('thickbox preview_link');
// If there's only 1 image and/or you only want the first one's href
if(image[0] !== undefined) {
// if condition to check whether or not the DOM has the images in the first place
// if yes, update the image_href variable with the href attribute
image_href = image[0].getAttribute('href');
}
祝你好运!