Javascript 在jQueryUI中,此.\u mouseInit不是函数错误,为什么升级到1.8.2后会出现此错误

Javascript 在jQueryUI中,此.\u mouseInit不是函数错误,为什么升级到1.8.2后会出现此错误,javascript,jquery,jquery-ui,jquery-plugins,Javascript,Jquery,Jquery Ui,Jquery Plugins,您好,在升级到1.8.2 jquery ui之后,我的应用程序遇到了问题。我得到一个“this.\u mouseInit不是函数错误” 包括: <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <style type="text/css" media="all">@import "css/pinpoint.css";</style

您好,在升级到1.8.2 jquery ui之后,我的应用程序遇到了问题。我得到一个“this.\u mouseInit不是函数错误”

包括:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<style type="text/css" media="all">@import "css/pinpoint.css";</style>
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/base/jquery-ui.css" type="text/css" />
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/jquery-ui.min.js"></script>
<script type="text/javascript" src="js/jquery.pinpoint.js"></script>

@导入“css/pinpoint.css”;
下面是代码给出错误的地方:

$(window).load(function() {
  $.widget("ui.boxTool", $.extend({}, $.ui.mouse, {

  _init: function() {
    this.element.addClass("ui-boxTool");
    this.dragged = false;

    this._mouseInit();
    this.width = $('#toPinpoint').width();
    this.height = $('#toPinpoint').height();

    this.helper = $(document.createElement('div'))
      .css({border:'1px dashed #c2c0c0'})
      .css({cursor:'crosshair'})
      .addClass("ui-boxTool-helper");
  },

  destroy: function() {
    this.element
      .removeClass("ui-boxTool ui-boxTool-disabled")
      .removeData("boxTool")
      .unbind(".selectable");
    this._mouseDestroy();

    return this;
  },

  _mouseStart: function(event) {
    var self = this;

    this.opos = [event.pageX, event.pageY];

    if (this.options.disabled)
      return;

    var options = this.options;

    this._trigger("start", event);

    $(options.appendTo).append(this.helper);

    this.helper.css({
      "z-index": 100,
      "position": "absolute",
      "left": event.clientX,
      "top": event.clientY,
      "width": 0,
      "height": 0
    });
  },

  _mouseDrag: function(event) {
    var self = this;
    this.dragged = true;

    if (this.options.disabled)
      return;

    var offset = $('.canvas').offset();
    var options = this.options;
    var x1 = this.opos[0], y1 = this.opos[1], x2 = event.pageX, y2 = event.pageY;
    if (x1 > x2) { 
        var tmp = x2; 
        x2 = x1; 
        x1 = tmp; 
    }
    if (y1 > y2) { var tmp = y2; y2 = y1; y1 = tmp; }
    if (x2 > this.width+offset.left-1){x2=this.width+offset.left-1;}
    if (y2 > this.height+offset.top-1){y2=this.height+offset.top-1;}
    if (x1 < offset.left){x2=this.offset.left;}
    if (y1 < offset.top){ x2=this.offset.top;}
    this.helper.css({left: x1, top: y1, width: x2-x1, height: y2-y1});

    this._trigger("drag", event);

    return false;
  },

  _mouseStop: function(event) {
    var self = this;

    this.dragged = false;

    var options = this.options;

    var clone = this.helper.clone()
      .removeClass('ui-boxTool-helper').appendTo(options.appendTo);



    this._trigger("stop", event, { box: clone });

    this.helper.remove();
    //$('.view-mode').remove(this.helper);
    return false;
  }

  }));
});
$(窗口).load(函数(){
$.widget(“ui.boxTool”)、$.extend({}、$.ui.mouse、{
_init:function(){
this.element.addClass(“ui boxTool”);
this.draw=false;
这个;
this.width=$('#toPinpoint').width();
this.height=$('#toPinpoint').height();
this.helper=$(document.createElement('div'))
.css({边框:'1px虚线#c2c0c0'})
.css({光标:'crosshair'})
.addClass(“ui boxTool助手”);
},
销毁:函数(){
这个元素
.removeClass(“ui boxTool ui boxTool已禁用”)
.removeData(“boxTool”)
.unbind(“可选”);
这个;
归还这个;
},
_mouseStart:函数(事件){
var self=这个;
this.opos=[event.pageX,event.pageY];
if(this.options.disabled)
返回;
var options=this.options;
该触发(“启动”,事件);
$(options.appendTo).append(this.helper);
this.helper.css({
“z指数”:100,
“位置”:“绝对”,
“左”:event.clientX,
“top”:event.clientY,
“宽度”:0,
“高度”:0
});
},
_mouseDrag:函数(事件){
var self=这个;
这是真的;
if(this.options.disabled)
返回;
var offset=$('.canvas').offset();
var options=this.options;
var x1=this.opos[0],y1=this.opos[1],x2=event.pageX,y2=event.pageY;
如果(x1>x2){
var-tmp=x2;
x2=x1;
x1=tmp;
}
如果(y1>y2){var tmp=y2;y2=y1;y1=tmp;}
如果(x2>this.width+offset.left-1){x2=this.width+offset.left-1;}
如果(y2>this.height+offset.top-1){y2=this.height+offset.top-1;}
如果(x1
您可能想查看此信息:

在页面上搜索“鼠标新建文件”


鼠标功能已从核心中分离出来

扩展小部件时,jQuery UI 1.8+中的语法发生了一些变化:

$(window).load(function() {
  $.widget("ui.boxTool", $.extend({}, $.ui.mouse, {
应该是这样的:

$.widget("ui.boxTool", $.ui.mouse, {
这里有两个变化:不需要,它现在由参数决定,并且您不想在
窗口中声明插件。onload
事件…没有必要,它只会引起麻烦


确保将端点更改为与最后两行相匹配:

  }));
});
现在应该是:

});

页面中包括哪些文件?整个jQuery UI库还是仅部分?您使用的是哪个版本的jQuery?这是为最新的jQuery库制作的,所以你需要确保你使用的也是最新版本的jQuery库。@Nick Craver@Kerry hey添加了包含项!谢谢这是这个的复制品