Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.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,我正在尝试克隆div的特定部分style=“background color:;” 所以我想做的是,当我点击一个特定的按钮时,它只克隆div的样式部分 目前我收到此错误uncaughttypeerror:$(…).attr(…).clone不是函数 以下是我目前拥有的一个示例: $(函数(){ $(“.mapei灌浆颜色”)。单击(函数(){ $(this.attr('style').clone(true,true).appendTo('网格'); 变量$this=$(“.grout选项卡”)

我正在尝试克隆div的特定部分
style=“background color:;”

所以我想做的是,当我点击一个特定的按钮时,它只克隆div的样式部分

目前我收到此错误
uncaughttypeerror:$(…).attr(…).clone不是函数

以下是我目前拥有的一个示例:

$(函数(){
$(“.mapei灌浆颜色”)。单击(函数(){
$(this.attr('style').clone(true,true).appendTo('网格');
变量$this=$(“.grout选项卡”);
if($this.hasClass(“单击一次”)){
$this.removeClass(“单击一次”);
$(“.mapei”).slideUp();
}
});
});

您可以简单地使用Jquery:函数获取特定属性

例如:

$('div').attr('style')
查看一个实际示例

编辑:

要将其用于克隆,可以执行以下操作:

$(this).clone().attr('style', $(this).attr('style')).appendTo('#the-grid');

请参阅以获取一个实时示例。

如果我正确理解了您的问题,当您单击一个按钮时,它会采用该按钮的样式并将其克隆到另一个按钮

$('#style')。在('click',function()上{
document.getElementById('clone').setAttribute('style',this.getAttribute('style'));
}); 

点击这里

克隆
在这里回答你的评论,我想我忽略了你到底需要什么

克隆(true)将复制样式属性以及节点的所有其他道具

你在代码中做了错误的动作- .attr('style')返回一个字符串,而不是元素。 我认为您需要将克隆节点附加到网格中

因此,不是:

$(this).attr('style').clone(true, true).appendTo('#the-grid');
你需要这个:

$(this).clone(true).appendTo('#the-grid').attr("style", "Your new styles here");
或者,如果要将原始对象中的样式与新样式合并,请执行以下操作:

var $elem = $(this).clone(true).appendTo('#the-grid');
var style = $elem.attr("style") + "Your new styles here";
$elem.attr("style", style);

希望这有帮助,我明白了。

你想从中提取按钮的样式吗?是的,单击该元素后,它会克隆内联样式并将其放置在我想要的位置。我知道如何做的其他一切我只是不知道如何克隆一个div的特定部分在这种情况下它是内联样式。我无法理解您真正想要的是什么,但这可能会帮助您$(选择器).attr('style')。返回特定div的内联样式。更新我的问题以显示我当前拥有的内容。使用jquery将代码缩减为:
$('#clone').attr('style',$(this.attr('style'))Hi Nanashi,这并没有完全做到这一点所发生的事情是,它只是将完整的div放入网格中,而不是将style属性添加到网格中。因此,如果我没有使用clone,我如何将样式再次指定给它相同的东西,而不是将背景色的内联样式添加到div中,而只是将样式添加到网格中网格内的整个div