我有一个用于拖放的简单 jQuery 例程,我最近从 1.7.2 升级到 1.8.21,现在当我删除项目时,我收到错误消息“未捕获的类型错误:无法调用未定义的方法“搜索”
通过搜索找不到任何东西,所以我希望有人以前见过这个。
这是代码:
$("#frame").droppable({
drop: function(ev, ui) {
if (ui.helper.attr('id').search(/drag[0-9]/) != -1){
counter++;
var element=$(ui.draggable).clone();
element.addClass("tempclass");
$(this).append(element);
$(".tempclass").attr("id","sig_"+counter);
//$(this).css('z-index', 100+counter);
$("#sig_"+counter).removeClass("tempclass");
var x = event.pageX - $(this).offset().left + 4;
var y = event.pageY - $(this).offset().top + 4;
$(this).find("input").val(x+","+y);
$("div#stop").text("STOP: \nLeft: "+ x + "\nTop: " + y);
//Get the dynamically item id
draggedNumber = ui.helper.attr('id').search(/drag([0-9])/)
itemDragged = "dragged" + RegExp.$1
//console.log(itemDragged)
$("#sig_"+counter).addClass(itemDragged);
}
}
});
jQuery 版本:1.7.2 jQuery-UI 版本:1.8.21 浏览器:Chrome 20.0.1132
更新:我似乎找到了一些“有效”的东西,但我觉得它不合适,因为我正在使用一个预先存在的项目。(我尝试复制,但没有用。)我更改了两行,都包含相同的失败代码:
ui.helper.attr('id')
至
ui.draggable.attr('id')
我想这只会在我的特定情况下有效,并且可能也应该包含“可拖动”块,但它目前有效。