gpt4 book ai didi

javascript - "Object doesn' 在 IE8 中设置对象属性时不支持此属性或方法

转载 作者:行者123 更新时间:2023-12-03 10:04:22 25 4
gpt4 key购买 nike

我正在尝试在不使用 jQuery 的情况下制作可拖动元素。我希望它能与 IE8 兼容。以下代码在 this.handle = { 处中断,并出现错误“对象不支持此属性或方法。”

IE9<在设置对象属性时是否有一些愚蠢的问题?

var Draggable = function(el){
this.el = el;
this.el.style.left = "0px";
this.el.style.top = "0px";
this.origin = {};

this.handle = {
drag: this.drag.bind(this),
move: this.move.bind(this)
};

this.events = {
start: new Listener(this.el, ["mousedown", "touchstart"], this.handle.drag),
move: {},
end: {}
};
}
Draggable.prototype = {
drag: function(evt){
this.origin.left = parseInt(this.el.style.left) - evt.clientX;
this.origin.top = parseInt(this.el.style.top) - evt.clientY;
this.events.move = new Listener(window, ["mousemove", "touchmove"], this.handle.move);
this.events.end = new Listener(window, ["mouseup", "touchend"], this.drop.bind(this));
},
move: function(evt){
this.el.style.left = this.origin.left + evt.clientX + "px";
this.el.style.top = this.origin.top + evt.clientY + "px";
},
drop: function(){
this.events.move.stopListening();
}
}

最佳答案

IE8 不支持

Function.prototype.bind()。你可以写一个polyfill为了它。

关于javascript - "Object doesn' 在 IE8 中设置对象属性时不支持此属性或方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30430295/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com