问题
I tried to use this jQuery selector:
$("a:has(href*=#)").click(function() {
alert('works');
});
but it doesn't seem to work. I would like to select all tags which have anchor in href attribute (has # symbol there)
回答1:
$("a[href*=#]").click(function(e) {
e.preventDefault();
alert('works');
});
回答2:
*=
will filter attributes that contain the given string anywhere
$("a[href*='#']").click(function() {
alert('works');
});
Also note that
$("a[href^='#']").click(function() {
alert('works');
});
will select any anchor whose href starts with a #
回答3:
You've got to select using the attribute starts with selector:
$('a[href^="#"]').click(function(){
alert('Works!');
});
Check out my jsfiddle!
来源:https://stackoverflow.com/questions/8683116/jquery-selector-for-links-with-in-href-attribute