我在加载 Mootools 和 JQuery 的页面中有一个简单的表单。 JQuery 处于无冲突模式,这似乎应该不会引起任何问题。

有一个名为“name”的表单元素——

<input class="required" id="sendname" name="sendname" value="">

我正在尝试使用 Mootools 将点击事件附加到它,以在点击名称框时更新其他内容:
$('sendname').addEvent('click', function(e){
    // do stuff.
});

问题是点击事件永远不会被添加。

加载时出现此错误:
Uncaught TypeError: Cannot call method 'addEvent' of null

当我尝试与 js 控制台中的元素进行交互时,出现以下错误:
> $('sendname').setProperty('value', 'test');
TypeError: Object sendname has no method 'setProperty'</strike>

编辑:通过加载较新的 Mootools 修复了以前的问题。但是,单击事件仍然无法正常运行,尽管它不会引发任何错误或警告。

这段代码几乎在我使用过的任何情况下都可以正常工作。我认为 jQuery 冲突存在一些问题,但 $ 符号有效的事实似乎证实了 noConflict 模式是可操作的。有任何想法吗?

最佳答案

您错误地定位了元素......我认为这与可能的冲突无关。

在这种情况下,您需要为 id 添加 哈希 或为类添加 时间段 ,如下所示:

$('#sendname').addEvent('click', function(e){
    // do stuff.
});

注意 #sendname 中的 #

关于javascript - mootools 和 jQuery 冲突,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6360340/

10-13 00:46