2013-04-09 2 views
0

Это по этому вопросу я спросил по этой ссылке: PHP CSS Colour Shuffle array?Jquery, если еще цвет перетасовка (передавая переменную)

Я изменил и добавил больше кода и есть другой вопрос, следовательно, почему я открыл новую тему ,

Я использую php и jQuery для перетасовки цветов каждый раз, когда страница обновляется. На данный момент это работает отлично. Но у меня есть функция jQuery, где я захватываю некоторые элементы, а на hoverstate отображает цвет тасования. Теперь это работает, но он показывает стандартный стандарт CSS, красный, синий, зеленый и т. Д. И даже не отображает цвета для оранжевого. Мне было предложено создать переменную, а затем создать функцию if и передать переменную через функцию наведения. Ниже приводится то, что у меня есть до сих пор, новичок в jQuery, поэтому я не уверен, где я иду не так, или куда идти дальше, может ли кто-нибудь привести меня к тому, почему это нарушено? Мой firebug не показывает ошибок, и я думаю, что они почти там! Благодарю.

PHP Перемешать цвета:

<?php 
$colours = array('red', 'green', 'blue', 'black'); 
$blog = $colours[array_rand($colours, 1)]; 
?> 

<body id="<?php echo $blog; ?>"> 

В моем CSS, где я хотел показать в случайном порядке цвета #green, #red находится перед actuallid, класса или элемента, и это работает! Просто при наведении курсора состояния теперь, где у меня есть этот JQuery ..

// цвет опрокидывание навигации

var colours = "<?php echo $colours; ?>"; 


     if(colours == "red"){ 
      colours = "#600"; 
     } 
     else if(colours == "green"){ 
      colours = "#363"; 
     } 
     else if(colours == "blue"){ 
      colours = "#369"; 
     } 
     else if(colours == "black"){ 
      colours = "#000"; 
     } 

        //example of some elements that would use the hover effect 
     $("#footer .address #breadcrumbs a").hover(function() { 
      $(this).stop().animate({ 'color': colours }, 300); 
     },function() { 
      $(this).stop().animate({ 'color': "#fff" }, 300); 
     }); 

я упускаю некоторые линии в случае еще или передавая переменную через неправильно? Благодаря!

ответ

0

Я предполагаю, что JS находится в тегах сценария на странице.

Вы не можете просто echo вне массива. Я предполагаю, что вы имели в виду echo$blog. Это должно передать один цвет в качестве строковых данных, которые будут отображены в ваших операциях if() {} else {} (должно быть действительно switch() { case }).

+0

Я повторил блог и попробовал оператор switch/case и все еще ничего. С заявлением и зависанием ничего не происходит. Спасибо хоть – user2212564

0

Хорошо, у меня есть работа.

Я сделал некоторые вещи, так что не уверен точно, что полностью установил его:

-clear Cache (Google Chrome является боль для этого)

-Изменено переменная от цвета к цвету (как в PHP и JS)

-При определении переменной в JS i выбрали $ blog вместо $ color.

У меня нет ошибок, когда это работает.

Спасибо!

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