2015-10-13 4 views
0

У меня есть удаленная функция, которая НЕ чести и перестает работать, когда я перемещаю сценарии jQuery в нижней части страницы (для более быстрой загрузки страницы). как я могу это исправить? заранее спасибо.Javascript remotefunction не будет работать, когда внизу страницы

<script type="text/javascript"> 
<?php echo $ajax->remoteFunction(array('url' => array('controller' => 'posts', 'action' => 'go', $user_obj['User']['id']), 'update' => 'engagePost')); ?> 
</script> 

<div id="engagePost"></div> 
+2

Для этого вы можете использовать 'готовый' метод jquery. https://api.jquery.com/ready/ – user3082321

ответ

2

Браузер читает страницу сверху донизу. В вашем случае функция, которую вы хотите вызвать, записывается в верхней части страницы, и, поскольку вы не завертываете ее в какое-то событие onload или document.ready, оно запускается немедленно. Но требуемые сценарии JQuery не загружаются до тех пор, пока браузер не напишет теги, вызывающие агрессивные сценарии.

<script> 
 
    remoteFunction() 
 
</script> 
 
<div> 
 
    <!--Page Content--> 
 
</div> 
 
<script src="jquery.js"></script>

вызывает проблему, вставить скрипты JQuery перед вызовом функции


             
  
<script src="jquery.js"></script> 
 
<script> 
 
    remoteFunction() 
 
</script> 
 
<div> 
 
    <!--Page Content--> 
 
</div>

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

$(document).ready(function() { //call function here }) 

событие в ваш html.

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

  • Нет связанных вопросов^_^