Я пытаюсь показать диалоговое окно (отделение), это в другом отделении. Таким образом, я могу легко держать все свои диалоговые окна вместе.
Страница выглядит примерно так:
<div id="bookshelf">
<div id="login">dialog</div>
</div>
Я добавил необходимые свойства к нему:
$("div#bookshelf div#login").dialog({ autoOpen: false });
и попытайтесь заставить его обнаружиться:
$("div#bookshelf div#login").dialog("open");
и это не будет.
Однако, если я изменяю последнюю строку на
$("div#login").dialog("open");
Это делает! Но я не хочу обращаться к нему непосредственно, потому что propably что-то еще на моей странице назовут "входом в систему" также в какой-то момент. И я хотел прекратить делать их очень долго идентификатором как идентификатор = "lp_dialogs_bookshelf_login".
Я делаю что-то не так здесь? Или я должен просто забыть об этом и начать использовать их противный идентификатор снова?
Когда вы создавали диалоговое окно, оно переместилось:
<div id="login">dialog</div>
В конец вашего html-документа, непосредственно перед
, поэтому селектор $ ("div # bookshelf div #login ")
не находит его ... потому что его там больше нет.
Я бы просто использовал div # login
во всех случаях, поскольку он должен быть уникальным, но чтобы ваш пример работал, вам нужно переместить диалоговое окно после его создания, например:
$("div#bookshelf div#login").dialog({ autoOpen: false })
.parent().appendTo('#bookself');