是否有一种方法使这段代码的变量

Is there a way to make a var of this piece of code?

本文关键字:段代码 变量 代码 方法 一种 是否      更新时间:2023-09-26

我有如下一段代码:

case "/buy":
        $('<p>What do you want to buy?<br><br></p>').hide().appendTo("#placeholder").fadeIn(1000);
        break;

因为我有很多情况我想把.hide().appendTo("#placeholder").fadeIn(1000);变成一个变量

我试过var addText = .hide().appendTo("#placeholder").fadeIn(1000);,但这不起作用。有什么办法能解决这个问题吗?

你不能把它设为变量

var addText = .hide().appendTo("#placeholder").fadeIn(1000);

,但你最好用函数代替:-

var addText = function(el){
  el.hide().appendTo("#placeholder").fadeIn(1000);
}

并像这样使用:-

var el = $('<p>What do you want to buy?<br><br></p>');
addText(el);

addText( $('<p>What do you want to buy?<br><br></p>') )

另一种选择是直接堆叠。

case "/buy":
case "/buy2":
case "/buy3":
case "/buy4":
        $('<p>What do you want to buy?<br><br></p>').hide().appendTo("#placeholder").fadeIn(1000);
        break;

如果你还想创建你的函数

var hideAppendAndFade = function (selector) {
    $(selector).hide().appendTo("#placeholder").fadeIn(1000);
};

并在你的case中调用

case "/buy":
case "/buy2":
case "/buy3":
case "/buy4":
        hideAppendAndFade('<p>What do you want to buy?<br><br></p>');
        break;

您可以将其放入函数中:

var hideAppendAndFade = function (element) {
    $(element).hide().appendTo("#placeholder").fadeIn(1000);
};

然后在需要时调用该函数:

hideAppendAndFade('<p>What do you want to buy?<br><br></p>')

(我猜测变化将在选择器上。调整您需要更改的任何其他内容,或者如果函数的不同调用之间没有任何变化,则硬编码所有内容。