我需要使用jquery在客户端设置个人classest(social-links-twitter,social-links-facebook,social-links-linkedin)的href网址。如何捕获href用户点击的内容然后设置网址?
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<!--JQuery-->
<script type="text/javascript" src="http://components.nhmwebdev.co.uk/scripts/jquery-1.10.2.min.js"></script>
<script type="text/javascript">
$(".profile li a").click(function (e) {
e.preventDefault();
var title = $(this).attr("title");
if (title == "pFacebook") $(this).attr("href", "yourHrefValueForFacebook");
});
</script>
</head>
<body>
<ul class="no-list social-links profile overflow-fix clear-fix push50">
<li class="social-links-twitter">
<a href="#" title="pTwitter">t</a>
</li>
<li class="social-links-facebook">
<a href="#" title="pFacebook">f</a>
</li>
<li class="social-links-linkedin">
<a href="#" title="pLinkedin">l</a>
</li>
</ul>
</body>
</html>
答案 0 :(得分:0)
将通用处理程序绑定到该列表并检查锚点title
属性:
$(".social-links li a").click(function(e) {
e.preventDefault();
var title = $(this).attr("title");
if (title == "Facebook") $(this).attr("href", "yourHrefValueForFacebook");
});
答案 1 :(得分:0)
您可以使用$(selector).attr("href")
获取href,$(selector).attr("href", "newurl")
进行设置。
例如:
$(".social-links-twitter a").attr("href");
将获得您的social-links-twitter链接的href。
答案 2 :(得分:0)
或者试试这个,这样你就不需要if语句
了$(document).ready(function () {
$(".social-links a[title=Facebook]").attr("href", "yourHrefValueForFacebook");
});
答案 3 :(得分:0)
试试这个!
$(document).ready(function(){
$('.social-links a').click(function(e){
switch($(this).attr('title')){
case 'pTwitter':
$(this).attr('href','yourTwitterUrl');
break;
case 'pFacebook':
$(this).attr('href','yourFacbookUrl');
break;
case 'pLinkedin':
$(this).attr('href','yourLinkedinUrl');
break;
default:
e.preventDefault();
break;
}
});
});
答案 4 :(得分:0)
不确定您要实现的目标。但是,您可以将逻辑移动到.ready(),而不是使用.click。
$(document).ready(function(){
$(".no-list li a").each(function(e,v){
//e.preventDefault();
//alert($(v));
var title = $(v).attr("title");
if (title == "pFacebook") $(v).attr("href", "http://facebook.com");
});
});