2011-12-30 36 views

Trả lời

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

nhờ, mà làm việc – simPod

+0

Meh - Tôi trễ - +1 –

+0

Tôi tin rằng @simPod là t rying để chọn các trường hợp của '' thay vì ' ' –

11

Bạn phải chọn bằng cách sử dụng attribute starts with selector:

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

Check-out my jsfiddle!

+0

[bộ chọn 'thuộc tính-chứa'] (http://api.jquery.com/attribute-contains-selector/), vì thuộc tính' href' là * không * 'bằng' thành '#'. Ngoài ra, các trạng thái API, rõ ràng, rằng giá trị được đánh giá *** phải *** được trích dẫn. –

+0

cảm ơn, nó hoạt động ngay bây giờ – simPod

+0

@DavidThomas, Anh ấy đang cố gắng chọn các trường hợp ' 'không giống như' '. Ngoài ra, cảm ơn bạn đã chỉ ra dấu ngoặc kép = D. –

40

*= sẽ lọc các thuộc tính có chứa các chuỗi cho trước bất cứ nơi nào

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

Cũng lưu ý rằng

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

sẽ chọn bất kỳ neo mà bắt đầu href với một #

+0

Bạn là người duy nhất thêm thuộc tính bắt đầu bằng công cụ chọn, đã xảy ra là những gì anh ta thực sự yêu cầu = D gj –

+0

Woot - thanks @Korvin :) –

+0

Tôi nghĩ câu hỏi của tôi rõ ràng nhưng nó phức tạp hơn : D – simPod

Các vấn đề liên quan