2015-06-27 1 views
1

Я пытаюсь дать пользователям параметры темы для игры. Вот что код в .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> 

и вот моя структура файла:

file structure

В консоли я не получаю никаких ошибок, и все значения возвращаются так, как ожидалось .... но фон не меняется, когда я выбираю новый из раскрывающегося списка. Я, вероятно, не замечаю что-то маленькое. Ваши глазные яблоки оценены;)

ОБНОВЛЕНО:

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; 
     } 
    }); 
+2

Первое, что нужно. Используйте событие 'change' для' select' вместо клика. Затем попробуйте использовать 'url ('...')' с кавычками. –

+2

Нажмите на огонь, как только вы нажмете на 'select', а не при выборе опции. Остальное выглядит отлично http://jsfiddle.net/2ttvf93r/. –

+0

хорошо, поэтому я достал все элементы клика и изменил его, чтобы изменить. это выглядит, как это сейчас:.. $ ("# тема") изменение (функция() { \t \t \t вар themeVal = $ ("# тема") VAL(); \t \t \t вар URL = «URL (» ../images/backgrounds/ "+ themeVal +" .jpg ') "; \t \t}); – HolyMoly

ответ

0

Почему бы не попробовать использовать событие изменения?

$("#theme").change(function() { 

}); 
+0

спасибо за ваш отзыв marhs08, я пробовал это, и он не работает ... не уверен, что я сделал это правильно, я обновил мой вопрос, если вы хотите заглянуть – HolyMoly

Смежные вопросы