Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.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
jQuery只追加一次_Jquery_Append - Fatal编程技术网

jQuery只追加一次

jQuery只追加一次,jquery,append,Jquery,Append,所以我有这个: jQuery("document").ready(function($){ var nav = $('#nav'); var logo = '<img src="img/logo.png" />'; $(window).scroll(function () { if ($(this).scrollTop() > 136) { nav.addClass("nav-f"); nav.append(logo); }

所以我有这个:

jQuery("document").ready(function($){

var nav = $('#nav');
var logo = '<img src="img/logo.png" />';

$(window).scroll(function () {
    if ($(this).scrollTop() > 136) {
        nav.addClass("nav-f");
        nav.append(logo);
    } else {
        nav.removeClass("nav-f");
        nav.remove(logo);
    }
});

});
jQuery(“文档”).ready(函数($){
var-nav=$(“#nav”);
var徽标=“”;
$(窗口)。滚动(函数(){
if($(this).scrollTop()>136){
资产净值增加类别(“资产净值-f”);
附加导航(标识);
}否则{
资产净值移除类(“资产净值-f”);
导航移除(徽标);
}
});
});
当滚动时,我试图将导航设置为固定的,这是可行的,但我还想在#nav div中添加一个带有徽标图像的标签,这也是可行的,但它会附加在每个滚动上,所以当滚动时,我会得到大约100个徽标图像

我怎样才能使它只追加一次,并且当它的滚动次数不超过136px时才能被删除?

只需使用布尔值

jQuery("document").ready(function($){

    var nav = $('#nav');
    var logo = '<img id="lilLogo" src="img/logo.png" />';
    var visible = false;

    $(window).scroll(function () {
            if ($(this).scrollTop() > 136) {
                nav.addClass("nav-f");
                if(!visible) {
                    nav.append(logo);
                    visible = true;
                }
            } else {
                nav.removeClass("nav-f");
                if(visible)  {
                    $('#lilLogo').remove();
                    visible = false;
                }
            }
        });
    });
jQuery(“文档”).ready(函数($){
var-nav=$(“#nav”);
var徽标=“”;
可见值=假;
$(窗口)。滚动(函数(){
if($(this).scrollTop()>136){
资产净值增加类别(“资产净值-f”);
如果(!可见){
附加导航(标识);
可见=真实;
}
}否则{
资产净值移除类(“资产净值-f”);
如果(可见){
$('#lilvogo')。删除();
可见=假;
}
}
});
});


另一种方法是使用
$(“#lilLogoID”).is(“:visible”)
进行检查,但是这将搜索img并在每个事件上检查visible(这会很慢)

添加一个类,比如说
滚动
#nav
。然后在
$(窗口)内滚动(function(){
检查
#nav
.hasClass()
滚动
,如果它有权执行其余操作或不执行..在
结束时,通过
删除类。removeClass()

jQuery(“文档”)。准备就绪(function($){
var-nav=$(“#nav”);
var徽标=“”;
$(窗口)。滚动(函数(){
if($(this).scrollTop()>136){
资产净值增加类别(“资产净值-f”);
如果(!$(“.nav-f”).find(“#lilvogo”).length){
附加导航(标识);
}
}否则{
资产净值移除类(“资产净值-f”);
导航移除(徽标);
}
});
});

使用
var logo=$('');而不是
var logo='';
谢谢!工作完美无瑕!
jQuery("document").ready(function($){

var nav = $('#nav');
var logo = '<img id="lilLogo" src="img/logo.png" />';    
$(window).scroll(function () {
    if ($(this).scrollTop() > 136) {
        nav.addClass("nav-f");  
        if (!$(".nav-f").find('#lilLogo').length) {
        nav.append(logo);
        }
    } else {

        nav.removeClass("nav-f");
            nav.remove(logo);

    }
});
});