1

我想使用点击事件标记我选择的文本。请参阅以下代码:

$(function () {

    $('body').bind('taphold', function (e) {
        $(this).addClass('highlighted');
        e.stopImmediatePropagation();
        return false;
    });

});

但是 $(this) 返回正文,我怎样才能得到选中的内容呢?

4

2 回答 2

1

当您将事件与bodyso绑定时,$(this)将返回body,但e.target将返回您触发事件的目标元素。

$(function () {
    $('body').bind('taphold', function (e) {
        $(e.target).addClass('highlighted');   // use e.target instead of this
        e.stopImmediatePropagation();
        return false;
    });
});
于 2012-04-30T07:49:27.040 回答
0

$(document).delegate('这里应该是文本选择器,比如id或者类名', 'taphold', function (e) {

             $(this).addClass('highlighted');
             e.stopImmediatePropagation();
             return false;
        });

希望这会有所帮助。

于 2012-12-25T13:32:22.957 回答