Я использую код-воспламенитель, и некоторые из моих представлений требуют jquery. Поскольку они должны использоваться в нескольких местах, они должны вызывать jquery в их файле, однако, поскольку они ссылаются на внешний файл, вызовы $ (document.ready) оцениваются перед загрузкой jquery и, следовательно, сбой. Можно ли положить jquery в тело и все еще загружать его до того, как будет обработан javascript. Или, альтернативно, это способ передать тот факт, что jquery требуется обратно через загорающий код в заголовки, которые были запрограммированы перед данным файлом.Можно ли загрузить JQuery в теле страницы
В свете:
echo $this->import->js('jquery.js','jquery');
echo '<script type="text/javascript">
$(document).ready(function(){$(\'div#login.rounded\').corner();})
</script>';
Вы можете просмотреть страницу по адресу: http://formulator.codingproject.net/content/login/
Примечание Эта страница на самом деле находится на моем домашнем компьютере, так что ожидается, что Recaptcha терпит неудачу.
Я попытался и не нашел способ. Мне будет интересно узнать, есть ли у кого-то еще. –
Я не знаком с codigniter, но это кажется интересным ... в чем разница между '$ this-> import-> js ('jquery.js', 'jquery')' и просто 'echo'-all '
Похоже, вы используете PHP? Если это так, создайте статический метод, который возвращает эту строку, но только если он еще не был включен в этот запрос. Затем вы можете убедиться, что он включен только один раз.
источник
2010-08-31 19:40:16
Я уже это делаю. Но это не устраняет проблему. – lemiant
JQuery должен действительно быть назван в элементе головки. Вот как вы это сделаете условно (непроверенный).
В контроллере, каждая функция, которая нуждается в JQuery должен иметь:
По вашему мнению заголовка:
источник
2010-08-31 19:44:11 ashicus
Ничего себе, это гораздо лучшая идея, чем моя. –
Мой сайт является таким же образом. То, что я делаю, - это один заголовок, который загружается на всех страницах. В этом заголовке я делаю
if($this->uri->segment(2) == 'controller')
. Затем я загружаю jQuery и некоторые скрипты, если это необходимо для этого контроллера.источник
2010-08-31 19:44:30
Я думаю, это будет хорошо, если jQuery будет включен в тег каждой страницы, кроме того, вы можете использовать мини-версию jQuery, которая не так тяжела.
источник
2010-08-31 19:47:32 dmitko
Возможно, я ошибаюсь. Но когда я просматриваю исходный код и следую за файлом jquery: http://www.formulator.com/assets/scripts/jquery/jquery.js Я получаю ошибку «страница не найдена». Поэтому я предполагаю, что это может быть проблемой. Может быть, ваш выход php не включает правильный домен/субдомен?
источник
2010-09-01 02:16:00 Matthew
О, извините. Как я уже сказал, он находится на моей домашней машине, поэтому мне нужно немного обновить его для доступа к jquery. – lemiant
Хорошо, я исправил это. Но ошибка сохраняется. PS спасибо за отзыв. – lemiant