Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用prototype(使用lowpro)时单击未处理的事件_Javascript_Prototypejs_Lowpro - Fatal编程技术网

Javascript 使用prototype(使用lowpro)时单击未处理的事件

Javascript 使用prototype(使用lowpro)时单击未处理的事件,javascript,prototypejs,lowpro,Javascript,Prototypejs,Lowpro,我有一个JS代码,它使用lowpro(原型扩展)对一组动态生成的问题进行重新排序。因此,当我单击a.move-up时,我希望向上移动该元素的父元素。a.下移假设把它下移 我使用lowpro,因为元素是在dom:loaded之后生成的。 JS代码: document.observe('dom:loaded', function() { Event.addBehavior( { 'a.move-up:click': function(event) { alert('Mo

我有一个JS代码,它使用lowpro(原型扩展)对一组动态生成的问题进行重新排序。因此,当我单击a.move-up时,我希望向上移动该元素的父元素。a.下移假设把它下移

我使用lowpro,因为元素是在dom:loaded之后生成的。

JS代码:

document.observe('dom:loaded', function() {
  Event.addBehavior( {
   'a.move-up:click':  function(event) {
        alert('Moving up!')
        //moveUp(this);
        //event.stop();

    },
   'a.move-down:click':  function(event) {
        alert('Moving down!')
        //moveDown(this);
        //event.stop();
    }
  });
});
每个元素(div.question)都有两个链接,允许该元素上移或下移。但是,不会处理这些单击事件

<div id="questions">    
    <div class="question">Q1 stuff 
    <a href="#" class="move-up" />Up</a>
        <a href="#" class="move-down"/>Down</a>
    </div>

    <div class="question">Q2 stuff
    <a href="#" class="move-up" />Up</a>
        <a href="#" class="move-down"/>Down</a>
    </div>
</div>

Q1材料
Q2材料
作为调试的一部分,我将代码缩减到最低限度,只是试图确保事件处理工作正常。当我点击JS支持的链接时,我甚至没有看到警告弹出窗口。因此,“单击”事件没有得到正确处理

我做错了什么


谢谢大家!

在做了一些阅读/研究之后,我意识到动态生成的元素

等等

在加载DOM后未注册/绑定,因此需要重新加载addBehavior()-ed以获取新元素

因此,在动态生成新元素之后,必须调用

 Event.addBehavior.reload();
在那个调用之后,新的动态生成的元素可以像我想要的那样上移/下移


我知道它必须是如此简单和明显的东西。。。叹气

我无法重现您的问题,但至少要更正行
,谢谢您的排错修复。即使我把它修好了,也不会有任何影响。我终于找到了原因。见下面我的答案。