我做错了什么?我正在尝试为每个锚点分配.data()。现在,脚本只删除标题,但不在data()中存储任何内容。当我尝试console.log(title)
时,它把标题写得很好,但仍然没有存储
我在咖啡中有以下几行
$(document).ready ->
initBubble();
initBubble = ->
$('a[title]').each (index, element) =>
setInfoAttr($(element))
setInfoAttr = (element) ->
title = element.attr('title')
element.data('info', title).removeAttr('title')
编译后的输出如下
(function() {
var initBubble, setInfoAttr;
$(document).ready(function() {
return initBubble();
});
initBubble = function() {
var _this = this;
return $('a[title]').each(function(index, element) {
return setInfoAttr($(element));
});
};
setInfoAttr = function(element) {
var title;
title = element.attr('title');
return element.data('info', title).removeAttr('title');
};
}).call(this);
也许可以稍微调整一下。我唯一能看到的是,initBubble函数在被调用时可能是未定义的。
initBubble = ->
$('a[title]').each (index, element) =>
setInfoAttr $(element)
setInfoAttr = (element) ->
title = element.attr('title')
element.data('info', title).removeAttr('title')
// A little shorcut for $(document).ready
$ ->
initBubble()