0

我有多个类的链接,video并且我想添加一个 id 属性,当用户单击链接时。

我的代码是:

   $(function () {$(".video").click(function(e){
   e.preventDefault();
   $(this).attr('id', 'selected');
   });}); 

单击链接后,如果我看到代码。Firebug 显示相同的代码,没有任何更改。

4

2 回答 2

2

尝试纯 JavaScript:

this.id = "selected";

如果这行得通,那么它就是一个 jQuery 放屁。如果它仍然不起作用,请确保您正确使用 Firebug(我不使用它,但我知道在 IE 中我必须单击一个按钮来刷新 DOM 视图),如果这似乎仍然没有修复它使用一个类(或一个data-*属性)

于 2013-02-19T18:50:06.123 回答
1

您发布的代码没有任何问题,因此您在其他地方做错了。以下是一些一般性的建议:

  • 更好地格式化代码以了解发生了什么
  • 始终包装在一个封闭的函数中,该函数将 $ 定义为 jQuery,以防它未定义或定义为全局范围内的其他内容
  • 将“选定”之类的内容应用为类,而不是 id
  • 不要使用文件准备好的简写它不能描述它正在做什么并且不可读

例如

(function($) {

  $(document).ready(function() {

    $('.video').click(function(ev) {

      ev.preventDefault();

      //$(this).attr('id', 'selected');
      $(this).toggleClass('selected'); // This will turn the "selected" class on and off for each click

    });

  );

})(jQuery);
于 2013-02-19T18:58:24.827 回答