2013-08-25 4 views
-1

Я работаю над личным сайтом, чтобы расширить свои знания jQuery. Я написал эту страницу в PHP и она отлично работает без ошибок консоли: http://sallibert.com/apps/notes/notes.phpjQuery не загружается до обновления?

Но, когда я называю его с помощью включаемого в индексном файле, анимация застревает на нагрузке: http://sallibert.com/index.php#!notes

Ссылки JS хороши, и нет плохих ссылок.

Я пробовал эти различные решения, и ни один из них не работает:

  • Поместите ссылки JS в организме
  • Заменить $('document').ready(function(){ с jQuery(document).ready(function(){
  • jQuery.noConflict();

У кого-нибудь есть идеи исправить эту ошибку? Спасибо за помощь!

EDIT:

Я обновил ссылки выше, вы можете проверить это сейчас. У меня нет журналов ошибок в firefox, но теперь на хроме я получил два из них. Я пытаюсь их решить:

Uncaught TypeError: Невозможно вызвать метод 'toLowerCase' из неопределенного Первая ошибка связана с этим, я думаю.

И

Uncaught TypeError: Не удается прочитать свойство 'стиль' в нуль Во-первых, я загрузить добавьте HTML с использованием HTML, а затем, когда страница загружается, применить некоторые JS:

$(document).ready(function(){ 
    ... 
$('#horloge .app_logo').append('<img class="aigfix" id="aigS" src="img/aigS.png"  alt="" style="transform: rotate(314784deg);"><img class="aig" id="aigM" src="img/aigM.png" alt="" style="transform: rotate(5246deg);"><img class="aighfix" id="aigH" src="img/aigH.png" alt="" style="transform: rotate(437deg);">'); 
.... 
}); 

window.onload = function() // wait before load 
    { 
     var d = new Date(); 
     var time = d.getSeconds() + 60 * d.getMinutes() + 3600 * d.getHours(); 

     var aigS = document.getElementById('aigS'); 
     var aigM = document.getElementById('aigM'); 
     var aigH = document.getElementById('aigH'); 

     aigS.style.MozTransform = 'rotate(' + (time * 6) + 'deg)'; 
     aigS.style.WebkitTransform = 'rotate(' + (time * 6) + 'deg)'; 
     aigS.style.OTransform  = 'rotate(' + (time * 6) + 'deg)'; 
     aigS.style.msTransform  = 'rotate(' + (time * 6) + 'deg)'; 
     aigS.style.transform  = 'rotate(' + (time * 6) + 'deg)'; 
     aigM.style.MozTransform = 'rotate(' + Math.round(time/10) + 'deg)'; 
     aigM.style.WebkitTransform = 'rotate(' + Math.round(time/10) + 'deg)'; 
     aigM.style.OTransform  = 'rotate(' + Math.round(time/10) + 'deg)'; 
     aigM.style.msTransform  = 'rotate(' + Math.round(time/10) + 'deg)'; 
     aigM.style.transform  = 'rotate(' + Math.round(time/10) + 'deg)'; 
     aigH.style.MozTransform = 'rotate(' + Math.round(time/120) + 'deg)'; 
     aigH.style.WebkitTransform = 'rotate(' + Math.round(time/120) + 'deg)'; 
     aigH.style.OTransform  = 'rotate(' + Math.round(time/120) + 'deg)'; 
     aigH.style.msTransform  = 'rotate(' + Math.round(time/120) + 'deg)'; 
     aigH.style.transform  = 'rotate(' + Math.round(time/120) + 'deg)'; 

     setInterval(function() { 
     time++; 
      aigS.style.MozTransform = 'rotate(' + (time * 6) + 'deg)'; 
      aigS.style.WebkitTransform = 'rotate(' + (time * 6) + 'deg)'; 
      aigS.style.OTransform  = 'rotate(' + (time * 6) + 'deg)'; 
      aigS.style.msTransform  = 'rotate(' + (time * 6) + 'deg)'; 
      aigS.style.transform  = 'rotate(' + (time * 6) + 'deg)'; 
      aigM.style.MozTransform = 'rotate(' + Math.round(time/10) + 'deg)'; 
      aigM.style.WebkitTransform = 'rotate(' + Math.round(time/10) + 'deg)'; 
      aigM.style.OTransform  = 'rotate(' + Math.round(time/10) + 'deg)'; 
      aigM.style.msTransform  = 'rotate(' + Math.round(time/10) + 'deg)'; 
      aigM.style.transform  = 'rotate(' + Math.round(time/10) + 'deg)'; 
      aigH.style.MozTransform = 'rotate(' + Math.round(time/120) + 'deg)'; 
      aigH.style.WebkitTransform = 'rotate(' + Math.round(time/120) + 'deg)'; 
      aigH.style.OTransform  = 'rotate(' + Math.round(time/120) + 'deg)'; 
      aigH.style.msTransform  = 'rotate(' + Math.round(time/120) + 'deg)'; 
      aigH.style.transform  = 'rotate(' + Math.round(time/120) + 'deg)'; 
     }, 1000); 
    } 

РНР включают в себя код:

<?php 
    $appid = strtolower($_GET['appid']); 
    if($appid && file_exists('apps/'.$appid.'/'.$appid.'.php')){ 
     header('Location: apps/'.$appid.'/'.$appid.'.html'); 
    } 
?> 

Update2: Я просто видел, что приложения в папке не определены. Я называю их с помощью массива: $ apps [1] = Array ('Maps', Array ('CV', Array ('Complet', 'Expériences', 'Compétences', 'Diplomes', 'Autres', 'Rech ерше ')),' Сообщения ', ...); Я решил Uncaught TypeError: Не могу вызывать метод 'toLowerCase' неопределенного. Но это не решило главную проблему, загруженность ошибок приложений заметок.

Спасибо за помощь!

+1

есть несколько ошибок в консоли, в частности, тот, который был выброшен в начале вашей разгрузки (aigS представляется нулевым) прямо перед запуском вашего кода анимации, кажется интересным ... – dc5

+0

где ваш код? – TecHunter

+0

Какую ссылку включить jQuery вы использовали? Где находится веб-сайт? –

ответ

0

window.onload может быть выполнен до $(document).ready. Если вы используете один тип события onload, вы должны придерживаться его и не смешивать. Кроме того, старайтесь не ожидать document.ready событие, которое срабатывает в определенном порядке, вы должны вызвать собственное событие, если вам нужны каскадные события:

//declare a custom event 
$(document).on('myevent', function(e){ 

}); 

// trigger a custom event 
$(document).trigger('myevent'); 

Вы должны переместить код из window.load к готовому функции Jquery ,

Дата

Вместо вашей формуле вы можете предпочесть new Date().getTime()/1000

ошибки toLowerCase

Изменение plugins.js (строка 75), от этого:

cache = rows.map(function(){ 
    return $(this).children('.search_str').html().toLowerCase(); 
}); 

:

cache = rows.map(function(){ 
    var el = $(this).children('.search_str'); 
    return el?el.html().toLowerCase():""; 
}); 
+0

Вместо этого я добавил append в window.onload. – zorg

+0

@zorg ok. все еще есть проблемы? вы можете добавить 'if (aigH) {...' в установленный стиль – TecHunter

+0

Я переписал css для часов после. У меня все еще есть ошибка: Uncaught TypeError: Невозможно вызвать метод 'toLowerCase' неопределенного. Я работаю над этим. – zorg

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