2013-08-06 3 views
-3
var csn = ['font-family', 'font-size', 'font-weight', 'color', 'text-decoration', 'text-shadow', 'background-color']; 

$.each(csn, function (n, value) { 
    style.push("'" + value + "':'" + $('div').css(value) + "'"); 
}); 

var msg = "{" + style.join(',') + "}"; 

$('div#taget').css(msg); 
+4

Что именно означает «не работает»? – j08691

+0

где он не работает? – Krishna

+0

Можете ли вы сказать мне, какая ошибка вы получаете? –

ответ

0

Я не проверял, но, попробуйте этот

var csn = ['font-family', 'font-size', 'font-weight', 'color', 'text-decoration', 'text-shadow', 'background-color']; 

$.each(csn, function (n, value) { 
    $('div#taget').css(value, $('div#source').css(value)); 
}); 

вид, что я изменить $ ('DIV') к $ (» div # source '), потому что вы хотите взять стиль всего из 1 div и не всех div страниц (включая div # taget);

2

Вы должны передать объект методу css. '{...}' это строка. Таким образом, вы используете метод css в качестве получателя, а не сеттер, jQuery пытается найти и вернуть значение запрашиваемого свойства (, что '{...} 'строка), что, конечно, undefined.

+1

со всем уважением, что вы поняли из этого вопроса ?? – AnaMaria

1

Исправлено:

// use camelCased properties 
var props = ['fontFamily', 'fontSize', 'fontWeight', 'color', 'textDecoration', 'textShadow', 'backgroundColor']; 

//create a dump object 
var dump = {}; 

//iterate through properties and populate the dump object 
for(var i = 0, l = props.length, prop; prop = props[i]; i++) 
    dump[prop] = $('div').css(prop); 
}); 

//apply 
$('div#taget').css(dump); 

Вы должны прочитать the documentation, где вы могли бы видели некоторые рабочие примеры. Кроме того, вы считаете, что у вас нет основ в javascript, объектах и ​​т. Д., Поэтому я предлагаю вам посетить this place.

+2

Вы должны отформатировать свой «код» как блок кода в редакторе SO (Ctrl + K, с выделенным выделенным кодом). Это делает код легко различимым от диалога. – VoidKing

+0

спасибо за комбинацию клавиш :) –

+0

Нет проблем, за небольшую добавленную информацию (я нахожу это очень полезным): Используйте Ctrl + Нажав на кнопку фактического кода, чтобы уменьшить выделенные строки на четыре пробела (напротив просто нажать кнопку или с помощью Ctrl + K). – VoidKing

0

@Hey,

изменили некоторые вещи в вашем коде FIDDLE DEMO

Вот результат, когда вы видите источник дел.

<div id="taget" style="font-family:'Times New Roman',font-size:16px,font-weight:400,color:rgb(0, 0, 0),text-decoration:none,text-shadow:none,background-color:rgba(0, 0, 0, 0)">content heer</div> 
Смежные вопросы