gpt4 book ai didi

javascript - 使用 JavaScript 事件而不是 MooTools Element.Event

转载 作者:行者123 更新时间:2023-12-02 22:57:32 25 4
gpt4 key购买 nike

我继承了一个实现 MooTools 1.4.5 的代码库。

该代码还利用第三方库来处理响应设备上的拖动。该库中包含以下代码:

var dndEvent = new Event(type, {
bubbles: true,
cancelable: cancelable
});

该事件在匿名 MooTools 函数中产生以下异常:

未捕获类型错误:无法读取未定义的属性“indexOf”

MooTools 代码已缩小(且未映射),因此到目前为止,我还没有针对未缩小的代码进行测试以了解此匿名函数的作用,但我怀疑它与 MooTools Element.Event 有关。 .

如果是这种情况,我如何强制作用域使用 JavaScript 的事件接口(interface)而不是 MooTools?

最佳答案

一个快速破解(因为我认为您在这个阶段试图避免深度重构)是在 Mootools 覆盖 Event 对象之前“保存”它:

<script>window.savedEvent = window.Event</script>
<script src="mootools.js"></script>

然后修改您的第 3 方库以使用“savedEvent”(现在显示为“Event”),或者将其全部放在一个范围内。

+(function() {
var Event = window.savedEvent
//existing code goes here
})()

但这可能需要您通过将这些标识符放在窗口对象上来显式导出库提供的所有内容

关于javascript - 使用 JavaScript 事件而不是 MooTools Element.Event,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57923712/

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