Я пытаюсь дать пользователям параметры темы для игры. Вот что код в .js файле выглядит следующим образом:свежие глаза, пожалуйста, вопросы темы - jQuery/select
var clicks = 0;
$("#theme").on("click", function(){
clicks++;
if(clicks == 1){
var themeVal = $("#theme").val();
var url = "url(../images/backgrounds/" + themeVal + ".jpg)";
$("body").css('background-image', url);
clicks = 0;
}
});
здесь короткая версия HTML:
<select id="theme">
<option value="" disabled="disabled" selected="selected">Select theme</option>
<option value="tropical_beach">Beach</option>
<option value="forest">Forest</option>
....
</select>
и вот моя структура файла:
В консоли я не получаю никаких ошибок, и все значения возвращаются так, как ожидалось .... но фон не меняется, когда я выбираю новый из раскрывающегося списка. Я, вероятно, не замечаю что-то маленькое. Ваши глазные яблоки оценены;)
ОБНОВЛЕНО:
var clicks = 0;
$("#theme").on("change", function(){
clicks++;
if(clicks == 1){
var themeVal = $("#theme").val();
var url = "url('../images/backgrounds/" + themeVal + ".jpg')";
$("body").css('background-image', url);
clicks = 0;
}
});
Первое, что нужно. Используйте событие 'change' для' select' вместо клика. Затем попробуйте использовать 'url ('...')' с кавычками. –
Нажмите на огонь, как только вы нажмете на 'select', а не при выборе опции. Остальное выглядит отлично http://jsfiddle.net/2ttvf93r/. –
хорошо, поэтому я достал все элементы клика и изменил его, чтобы изменить. это выглядит, как это сейчас:.. $ ("# тема") изменение (функция() { \t \t \t вар themeVal = $ ("# тема") VAL(); \t \t \t вар URL = «URL (» ../images/backgrounds/ "+ themeVal +" .jpg ') "; \t \t}); – HolyMoly