Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.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 jQuery执行一次后不工作_Javascript_Jquery - Fatal编程技术网

Javascript jQuery执行一次后不工作

Javascript jQuery执行一次后不工作,javascript,jquery,Javascript,Jquery,正如我所说,我的小jQuery脚本在运行了两次之后就不能工作了,我遇到了一个奇怪的错误。你们当中有谁知道发生了什么/如何解决它吗?如果你能做到,那就太棒了 谢谢大家! Connor您正在删除要为其添加初始按键事件处理程序的元素。快速修复方法是将事件处理程序取出到函数中,并将其重新附加到新添加的元素: function handleKeyPress(event) { if (event.which == '13') { var itemToAdd = $(".focus")

正如我所说,我的小jQuery脚本在运行了两次之后就不能工作了,我遇到了一个奇怪的错误。你们当中有谁知道发生了什么/如何解决它吗?如果你能做到,那就太棒了

谢谢大家!


Connor

您正在删除要为其添加初始
按键
事件处理程序的元素。快速修复方法是将事件处理程序取出到函数中,并将其重新附加到新添加的元素:

function handleKeyPress(event) {
    if (event.which == '13') {
        var itemToAdd = $(".focus").val();
        if (itemToAdd != ""){
            $(this).remove();
            $(".active-li").append(itemToAdd);
            $("#wrapper ul").append("<li class='active'><input type='text' class='root focus' /></li>");
            $(".active-li").removeAttr("class");
            $(".active").removeClass("active").addClass("active-li");
            $(".focus").keypress(handleKeyPress).focus();
        }
    }
}

$(".focus").keypress(handleKeyPress);
功能手柄按键(事件){
如果(event.which=='13'){
var itemToAdd=$(“.focus”).val();
如果(itemToAdd!=“”){
$(this.remove();
$(“.active li”)。追加(itemToAdd);
$(“#wrapper ul”).append(“
  • ”); $(“.active li”).removeAttr(“类”); $(.active”).removeClass(“active”).addClass(“active li”); $(“.focus”).keypress(handleKeyPress.focus(); } } } $(“.focus”).keypress(handleKeyPress);

    但我必须说,这看起来是一个非常低效的方式来实现你在这里试图做的事情。。。想一个不必删除输入元素的替代解决方案(只需在其前面插入新的
  • 您正在删除要为其添加初始
    按键
    事件处理程序的元素。快速修复方法是将事件处理程序取出到函数中,并将其重新附加到新添加的元素:

    function handleKeyPress(event) {
        if (event.which == '13') {
            var itemToAdd = $(".focus").val();
            if (itemToAdd != ""){
                $(this).remove();
                $(".active-li").append(itemToAdd);
                $("#wrapper ul").append("<li class='active'><input type='text' class='root focus' /></li>");
                $(".active-li").removeAttr("class");
                $(".active").removeClass("active").addClass("active-li");
                $(".focus").keypress(handleKeyPress).focus();
            }
        }
    }
    
    $(".focus").keypress(handleKeyPress);
    
    功能手柄按键(事件){
    如果(event.which=='13'){
    var itemToAdd=$(“.focus”).val();
    如果(itemToAdd!=“”){
    $(this.remove();
    $(“.active li”)。追加(itemToAdd);
    $(“#wrapper ul”).append(“
  • ”); $(“.active li”).removeAttr(“类”); $(.active”).removeClass(“active”).addClass(“active li”); $(“.focus”).keypress(handleKeyPress.focus(); } } } $(“.focus”).keypress(handleKeyPress);

    但我必须说,这看起来是一个非常低效的方式来实现你在这里试图做的事情。。。想一个不必删除输入元素的替代解决方案(只需在输入元素之前插入新的
  • 您只需将按键事件绑定到第一个
    。焦点
    元素。一旦您删除它,它将不再接收按键事件

    换行

    $(".focus").keypress(function(event) {
    

    jQuery
    .live()
    为当前和将来匹配当前选择器的所有元素的事件附加一个处理程序

    此外,您需要在下面的行之后添加此项,以防止出现意外行为:

    if (event.which == '13') {
        event.preventDefault();    < stop the enter keypress
    
    if(event.which==“13”){
    event.preventDefault();<停止回车键
    
    您仅在第一个
    .focus
    元素上绑定按键事件。一旦删除它,它将不再接收按键事件

    换行

    $(".focus").keypress(function(event) {
    

    jQuery
    .live()
    为当前和将来匹配当前选择器的所有元素的事件附加一个处理程序

    此外,您需要在下面的行之后添加此项,以防止出现意外行为:

    if (event.which == '13') {
        event.preventDefault();    < stop the enter keypress
    
    if(event.which==“13”){
    event.preventDefault();<停止回车键
    
    注意:错误显示在2上returns@thenoviceoof谢谢-刚刚修复;)注意:错误显示在2returns@thenoviceoof谢谢-只是修复它;)完美的,完美无瑕地工作。谢谢-一旦它允许我,我将标记它是正确的!而且,您可能需要考虑Ates的建议,只需插入,<代码><代码> >文本>活动> <代码>元素,根本不删除<代码> <代码>。我绝对在考虑。非常感谢你们两位!完美,完美无瑕。谢谢-一旦我允许,我将标记为正确的!而且,您可能需要考虑Ates的建议,只需插入,<代码>。,文本到<代码> .Active Leave<代码>元素,根本没有删除<代码> <代码>。我绝对在考虑这一点。非常感谢你们两个!谢谢Ates,我一定会考虑的!谢谢Ates,我一定会考虑的!