4

这是 HTML 片段:

<input type="text" name="UPCtext" id="UPCtextBar" value="" placeholder="Type UPC number" class="UPCvalue"/>

没有与此输入字段关联的事件 bind() 或 live()。

如果我删除 jQTouch,它应该可以正常工作,那么,有人遇到过这个问题吗?

4

2 回答 2

1

快速搜索“jqtouch paste”发现了一个 jqTouch问题,表明它可能是一个 WebKit 继承错误。在这个阶段似乎没有提供任何解决方案。

于 2010-02-23T22:30:26.447 回答
0

我找到了解决方法:

function fixCopyPaste(el) {
    el.bind('paste', function(e) {
        var element = $(this).context;

        var text = $(this).val();
        var start = element.selectionStart;
        var pastedText = e.originalEvent.clipboardData.getData('text/plain');
        $(this).val(text.substring(0, element.selectionStart)
            +pastedText
            +text.substring(element.selectionEnd, text.length));
        element.selectionStart = start+pastedText.length;
        element.selectionEnd = element.selectionStart;
    });
}

在要启用粘贴功能的输入元素上调用此函数。例如:

fixCopyPaste($('#notes'));

它可能可以扩展到处理多个元素。

于 2010-12-14T02:11:02.650 回答