У меня есть скрытый <section />
, который состоит из элементов div, содержащих контент, который нужно вставить в диалоговое окно jQuery UI.В document.ready я хочу пройтись по этим элементам div, взять идентификатор каждого соответствующего элемента div, заменить тире пробелами, заглавными буквами каждое слово и сохранить его в переменной title.Затем я собираюсь использовать это в объектном литерале, который помещается в мой массив dialogs[]
.Звучит просто, верно?
Урезанная версия HTML:
<section id="dialog-content" class="hidden">
<div id="some-dialog">
// awesome dialog content here
</div>
<div id="another-dialog">
// awesome dialog content here
</div>
<div id="modal-dialog">
// awesome dialog content here
</div>
</section>
Урезанная версия JavaScript:
var dialogs = [],
$container = $("#dialog-content");
$content = $container.find("> div");
$content.each(function (i)
{
var $this = $(this),
id = $this.attr("id"),
title = id.replace(/\-/g, " ");
console.log(title);
dialogs[dialogs.length] =
{
trigger: $("#" + id + "-trigger"),
title: title,
content: $this.html()
};
});
Кстати - я знаю, что могу использовать $.data()
и добавлять собственные свойства в мои div, но я действительно хотел как можно меньше разметки, и мне любопытно, что это за конкретная возможность.Так что это не столько мой пример, сколько вопрос.
Если повторить вопрос, то:
Как я могукаждое слово в переменной пишется с заглавной буквы, как text-transform: capitalize;
в CSS?