#jquery #jquery-ui #attributes #dynamic-values
#jquery #jquery-пользовательский интерфейс #атрибуты #динамические значения
Вопрос:
Я некоторое время изучал это, но не могу понять. Я создаю веб-сайт для опроса, на котором я отслеживаю положение курсора. Мне нужно также показать модальное всплывающее сообщение с инструкциями — пока все хорошо. проблема в том, что для закрытия модального всплывающего окна нажатием кнопки ok курсор будет находиться в заданном положении. Короче говоря, мне нужно рандомизировать положение модального всплывающего окна, это то, что у меня есть до сих пор:
var ypos = ["top", "bottom"],
xpos = ["left", "right"],
yrand = Math.floor(Math.random() * 2),
xrand = Math.floor(Math.random() * 2);
var box_pos = ypos[yrand] " " xpos[xrand];
$('#modalUIWrap').dialog({
modal: true,
resizable: false,
autoOpen: false,
width: 500,
position: box_pos,
buttons: {
"Got it!": function () {
$(this).dialog("close");
}
}
});
когда я избавляюсь от xpos или ypo в определении box_pos, оно работает нормально, как и тогда, когда я напрямую объявляю позицию «top left» или что-то еще, но не тогда, когда я ее объединяю. Есть мысли?
Ответ №1:
Вы поменяли местами значения. В документации предполагается, что допустимыми string
значениями являются "[xpos] [ypos]"
.
Обратите внимание, насколько правильна позиция этой скрипки: http://jsfiddle.net/Q4fFh /
И как это не так: http://jsfiddle.net/Q4fFh/1 /
Попробуйте просто поменять местами значения:
var box_pos = xpos[xrand] " " ypos[yrand];
Не по теме: появление модальных диалоговых окон в случайных местах на экране, вероятно, будет раздражать ваших пользователей