2011-12-30 12 views

Odpowiedz

57
$("a[href*=#]").click(function(e) { 
    e.preventDefault(); 
    alert('works'); 
}); 
+0

dzięki, że działa – simPod

+0

Meh - jestem spóźniony - +1 –

+0

Wierzę, że @simPod jest t Aby wybrać przypadki '' zamiast '' –

11

masz do wyboru za pomocą attribute starts with selector:

$('a[href^="#"]').click(function(){ 
    alert('Works!'); 
}); 

odjazdu my jsfiddle!

+0

[selektor "atrybut-zawiera"] (http://api.jquery.com/attribute-contains-selector/), ponieważ atrybut 'href' to * nie * 'równy' do '# '. Ponadto interfejs API wyraźnie stwierdza, że ​​wartość podlegająca ocenie *** musi być zacytowana. –

+0

dziękuje, działa teraz – simPod

40

*= filtruje atrybuty, które zawierają podany ciąg nigdzie

$("a[href*='#']").click(function() { 
    alert('works'); 
}); 

Należy również pamiętać, że

$("a[href^='#']").click(function() { 
    alert('works'); 
}); 

wybierze żadnej kotwicy którego href rozpoczyna się a #

+0

Jesteś jedyną osobą, która dodała atrybut zaczynający się od selektora, który był tym, o co go naprawdę prosił = D gj –

+0

Woot - dzięki @Korvin :) –

+0

Myślałem, że moje pytanie jest jasne, ale jest bardziej wyrafinowane, niż się wydawało : D – simPod