2016-04-26 70 views
2

我想在DOM中獲取一個元素,我想要一個特定的標記,並且我查詢的是某個href。查詢<area> HREF標記

<map name='image-map'> 
    <area target='' alt='' title='' href='#loc=sf1d1' coords='242,50,262,67' shape='rect'> 

我使用jQuery搶選擇:

var location = '#loc=sf1d1' 
var linkToDesk = document.querySelector('area[href='+location+']'); 

我看到的錯誤是:

未能執行 'querySelector' 在 '文件': 「區域[href =#loc = sf1d1]'不是有效的選擇器。

+0

您需要使用'location.replace('=','\\ =')'對於所有可能是jquery的有效文字的字符$ method – joyBlanks

+1

'area [href =''+ location +'「]''not'area [href ='+ location +']''(需要添加雙引號」「) – ann0nC0d3r

+0

如果沒有雙引號,則不需要雙引號在字符串中。好,但不會解決這個問題 – joyBlanks

回答

1

試試這個:

<map name='image-map'> 
    <area target='' alt='' title='' href='#loc=sf1d1' coords='242,50,262,67' shape='rect'> 
</map> 

的Javascript

var location = '#loc=sf1d1'; 
var linkToDesk = document.querySelector('area[href="'+location+'"]'); 
console.log(linkToDesk); 
0

你需要逃避某些字符使用location.replace('=','\\=')所有字符,可能是一個有效的文字jQuery的$方法