JQuery问题每个函数

时间:2011-02-03 16:57:52

标签: jquery

我有一个jquery函数来隐藏网页上的电子邮件ID以避免垃圾邮件。 我试图在此函数的帮助下将所有span标签与类'mailme'替换为有效的电子邮件ID。该代码适用于1个span标记,但由于在每个方法的帮助下它已更改为多个跨度,因此无效。

HTML

<span class="mailme">myemail at mydomain dot com</span>

的jQuery

$('span.mailme').each(function(){
var spt = "#" + $(this).attr("id");
var at = / at /;
var dot = / dot /g;
var addr = $(spt).text().replace(at,"@").replace(dot,".");
$(spt).after('<a href="mailto:'+addr+'" title="Send an email">'+ addr +'</a>')
.hover(function(){window.status="Send a letter!";}, function(){window.status="";});
$(spt).remove();
});

1 个答案:

答案 0 :(得分:3)

现场演示: http://jsfiddle.net/g7Szt/2/

$('span.mailme').each(function () {
    var addr = $(this).text().replace(/ at /, "@").replace(/ dot /g, "."),
        s = '<a href="mailto:' + addr + '" title="Send an email">' + addr + '</a>',
        link = $(s);

    link.hover(function () {
        window.status = "Send a letter!";
    }, function () {
        window.status = "";
    });

    $(this).replaceWith(link);
});

<head>
    ...
    <script>
        $(function() {
            // place all jQuery code here
        });
    </script>
    ...
</head>