Jquery 多次调用变量

Jquery 多次调用变量,jquery,variables,Jquery,Variables,我试图多次调用一个变量,但它只在一个场合起作用。我猜你只能使用这个变量一次。有办法解决这个问题吗 这是一个我正在努力实现的例子 var prependThis = $('<li><a href="#">PREPEND ME</a></li>'); var andThis = $('<li><a href="#">PREPEND ME TOO</a></li>'); $(function () {

我试图多次调用一个变量,但它只在一个场合起作用。我猜你只能使用这个变量一次。有办法解决这个问题吗

这是一个我正在努力实现的例子

var prependThis = $('<li><a href="#">PREPEND ME</a></li>');
var andThis = $('<li><a href="#">PREPEND ME TOO</a></li>');
$(function () {
    if ($('body').hasClass('test')) {
        $(prependThis).prependTo($('.testing'));
        $(andThis).prependTo($('.test'));
    } else if ($('body').hasClass('anothertest')) {
        $(prependThis).prependTo($('.testing'));
        $(andThis).prependTo($('.test'));
    }
});
var prependThis=$('
  • '); var和this=$('li>'); $(函数(){ if($('body').hasClass('test')){ $(prependThis).prependTo($('.testing')); $(和此).prependTo($('.test')); }else if($('body').hasClass('anothertest')){ $(prependThis).prependTo($('.testing')); $(和此).prependTo($('.test')); } });
    DOM对象只能追加一次。您需要克隆jQuery元素,以便能够多次附加它

    var prependThis = $('<li><a href="#">PREPEND ME</a></li>');
    var andThis = $('<li><a href="#">PREPEND ME TOO</a></li>');
    
    $(function () {
        if ($('body').hasClass('test')) {
            prependThis.clone().prependTo($('.testing'));
            andThis.clone().prependTo($('.test'));
        } else if ($('body').hasClass('anothertest')) {
            prependThis.clone().prependTo($('.testing'));
            andThis.clone().prependTo($('.test'));
        }
    
    });
    
    var prependThis=$('
  • '); var和this=$('li>'); $(函数(){ if($('body').hasClass('test')){ prependThis.clone().prependTo($('.testing')); 和this.clone().prependTo($('.test')); }else if($('body').hasClass('anothertest')){ prependThis.clone().prependTo($('.testing')); 和this.clone().prependTo($('.test')); } });
    您没有使用选择器获得有效的jQuery对象:

    var prependThis = $('<li><a href="#">PREPEND ME</a></li>');
    var andThis = $('<li><a href="#">PREPEND ME TOO</a></li>');
    
    注意,您确实在这里错过了一个单引号
    $(prependThis).prependTo('.testing')


    您可以根据需要多次调用该变量。您尝试多次使用哪个变量以及在哪里使用?您不会多次调用任何变量。您使用的是elseif,因此我无法理解您的情况。如果您的变量只存储HTML字符串而不是jQuery对象,那么它们将像您所希望的那样可重用。但是,由于您已经创建了DOM元素片段,所以在预编写它们时,它们只是四处移动。您知道您正在尝试测试
    ,如果它有类
    test
    另一个测试
    ,对吗?不是潜水舱什么的?因此,您正在寻找if
    else if
    。没有必要用jQuery对象生成jQuery对象
    prependThis
    已经是一个jQuery对象,所以您只需克隆它并将其附加到某个对象中即可
    var$clone=prependThis.clone()$(“.test”).prepend($clone)
    
    var prependThis = '<li><a href="#">PREPEND ME</a></li>';
    var andThis = '<li><a href="#">PREPEND ME TOO</a></li>';
    
    $(function() {
    if ($('body').hasClass('test')){
        $(prependThis).prependTo('.testing');
        $(andThis).prependTo('.test');
    }
    else if ($('body').hasClass('anothertest')){
        $(prependThis).prependTo('.testing');
        $(andThis).prependTo('.test');
    }
    
    });