Синтаксис jQuery String - PullRequest
       3

Синтаксис jQuery String

0 голосов
/ 19 января 2012

Возникли проблемы с синтаксисом при попытке вставить HTML после элемента.

$('<div id="newdiv" style="height:' + heightvar +'"></div>').insertAfter('#mydiv');

Новый div вставляется в правильном месте, но отсутствует свойство высоты в стиле, поэтому выглядит так:

<div id="newdiv" style=""></div>

Вы видите проблему с моим синтаксисом?

Ответы [ 6 ]

1 голос
/ 19 января 2012

Полагаю, вы забыли единицы измерения в своей переменной heightvar.

heightvar = '10' приведет к пустому атрибуту стиля, но heightvar = '10px' - нет.

1 голос
/ 19 января 2012
$('<div id="newdiv" style="height:'+ heightvar +'px">hello</div>').insertAfter('#mydiv');
1 голос
/ 19 января 2012

как насчет этого:

$('<div id="newdiv">')
.css({height:heightvar})
.insertAfter('#mydiv');
0 голосов
/ 19 января 2012

Переключение вокруг селектора. Функция JQuery - $ () - должна использоваться для выбора элемента, который вы хотите изменить. Попробуйте:

var heightvar = '0px';

$('#mydiv').after('<div id="newdiv" style="height:' + heightvar +'"></div>');
0 голосов
/ 19 января 2012

Я подозреваю, что heightvar имеет недопустимое значение.См. Мой демо ,

Ниже код работает для меня,

var heightvar = '0px';

$('<div id="newdiv" style="height:' + heightvar +'"></div>').insertAfter('#mydiv');
0 голосов
/ 19 января 2012

Вы можете применить стиль, используя функцию jquery, а не шаблонизируя.Будет лучше и легче.

var myDiv = $('<div id="newdiv"></div>');
$(myDiv).css('height', heightvar);
myDiv.insertAfter('#mydiv');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...