假设我有这个HTML代码...如何在onclick中加粗文本?

时间:2010-02-17 01:42:59

标签: javascript jquery

<a href="" onclick="runstuff();return false;">Item</a>

执行runstuff()后,我想使用JQuery使Item 粗体。 我需要一个“id”吗?那么“自我”呢?

4 个答案:

答案 0 :(得分:6)

使用jQuery,您应该绑定到链接本身的属性或类。例如:

<a href="foo.html" class="makeBold">Click Me</a>
$("a.makeBold").click(function(e){
  e.preventDefault();
  $(this).css("font-weight", "bold");
});

当然,这是一个CSS解决方案。您也可以将元素包装在<b><strong>标记中:

$("a.makeBold").click(function(e){
  e.preventDefault();
  $(this).wrap("<strong>");
});

答案 1 :(得分:1)

你点击的A在你的例子中将是'this',所以只需定义runstuff:

function runstuff() {
    jQuery(this).css("font-weight", "bold");
}

答案 2 :(得分:0)

我不知道它是否会在runstuff()运行之前或之后加入文本,但我希望这会有效:

$('a[onclick^=runstuff]').click(function(){
      $(this).css("font-weight", "bold");
});

也许您可以通过使用jQuery更改onclick属性来确保它在runstuff()之后运行?像

这样的东西
$('a[onclick^=runstuff]').attrib('onclick','runstuff();boldtext();return true;');

然后你必须定义boldtext()

答案 3 :(得分:0)

您可以尝试将HTML修改为:

<a href="#" onclick="runstuff(this);return false;">Item</a>

而且,您可以使用以下脚本:

function runstuff(link) {
    jQuery(link).css("font-weight", "bold");
}