Поскольку в настоящее время нет доступного решения для проверки / проверки схемы в отношении другой схемы, похоже, что мы должны использовать обходные пути.
Определите, существуют ли все типы данных, определенные в схеме подмножества, и находятся в пределах (менее строгих) границ того, что определено в схема «чертежа».
Возможное решение:
Итак, используя это знание, мы можем построить решение:
Создать все возможные экземпляры XML схемы подмножества ( выполнение этого шага программно может быть вызов) и проверить эти экземпляры XML на схему «плана».
Но как вы знаете, что подмножество является подмножеством схемы «плана»? Хорошо, поскольку вы создали все возможные экземпляры XML схемы подмножества, они охватывали все типы данных, которые есть в схеме подмножества. И проверка этих экземпляров XML на схему «чертежа» по сути проверяет, существуют ли типы данных, и все находится в пределах того, что определено в схеме «плана». Следовательно, определение того, что ваша схема подмножества действительно является подмножеством схемы «плана».
Я знаю, что это не идеальное решение, но надеюсь, что это поможет, поскольку нет простого способа сделать то, что вы просить.
В моем случае я забыл включить это:
<script src ="jquery-2.1.1.js"></script>
Раньше я включал только jquery-mobile, который вызывал эту ошибку.
Странно, моя проблема исходила из PHP.
Ошибка API REST API, и впоследствии она прерывала загрузку библиотек. Поскольку сбой был вызван вызовом REST, он не дал мне ошибку компиляции php.
Сохраните это как параметр, если загрузка jquery выглядит нормально.
Вот худший случай:
Все казалось идеальным. Проведя пару часов, я понял, что файл jquery, который добавлен в правильную позицию, был фактически файлом с пустым контентом!
У меня была эта проблема, когда я просматривал интернет через мою мобильную точку доступа. он также сжимал изображения и добавлял следующий сценарий внизу тега body
<script language="javascript"><!--
bmi_SafeAddOnload(bmi_load,"bmi_orig_img");//-->
</script>
Когда я подключался к собственному Wi-Fi-соединению, все, похоже, работает для меня. Надеюсь, что это поможет кому-то.
Вы вызываете функцию готовности перед включением jQuery JavaScript. Сначала ссылайтесь на jQuery.
Укушенный этим еще раз, отсутствующие ссылки источника библиотеки. Google Hosted Libraries Похожие ссылки
Если ваш пользовательский скрипт загружен до того, как плагин jQuery будет загружен в браузер, тогда может возникнуть такая проблема. Таким образом, всегда сохраняйте свой собственный код JavaScript или jQuery после вызова плагина jQuery, поэтому решение для этого:
Сначала добавьте ссылку на файл jQuery, размещенный в GoogleApis, или локальный файл jQuery, который вы будете загружать из http://jquery.com/download/ и хост на вашем сервере:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
или любой плагин для jQuery. Затем добавьте ссылку на свой файл сценария или код:
<script src="js/custom.js" type="text/javascript"></script>
If your custom script is loaded before the jQuery plugin is loaded to the browser then this type of problem may occur
идеальный ответ .. в моем случае скрипт был в нижнем колонтитуле
– echoashu
23 November 2014 в 17:23
у меня была одна и та же проблема, и ни одно из этих решений выше не помогло. однако я просто связал файлы .css после файлов .js, и проблема чудесным образом исчезла. надеюсь, что это поможет.
В моем случае это была опечатка, я забыл обратную косую черту и неправильно ссылался на источник.
До src="/scripts/jquery.js"
После & nbsp; & nbsp; src="scripts/jquery.js"
Ваш файл JavaScript отсутствует, поэтому произошла ошибка. Просто добавьте файл JavaScript внутри тега <head>
. См. Пример:
<script src="js/sample.js" type="text/javascript"></script>
<link href="css/sample.css" rel="stylesheet" type="text/css" />
или добавьте следующий код в тег:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
Хорошо, я признаю, что это была действительно тупое дело, которое когда-то случалось для меня. Я изменил тег сценария, чтобы указать на нужное содержимое, и изменил порядок скриптов, чтобы он был правильным в редакторе ... но полностью забыл сохранить изменения; (Вы могли бы смеяться сейчас, но когда вы устали от всех странных могут возникнуть проблемы. I
У меня была аналогичная проблема, и это было из-за того, что мне не удалось закрыть> ссылку на таблицу стилей.
var $ = jQuery;
jQuery(document).ready(function($){
Сначала вы должны поместить ссылки на сценарии jquery.
<script language="JavaScript" type="text/javascript" src="/js/jquery-1.2.6.min.js"></script>
<script language="JavaScript" type="text/javascript" src="/js/jquery-ui-personalized-1.5.2.packed.js"></script>
<script language="JavaScript" type="text/javascript" src="/js/sprinkle.js"></script>
HTML
файлов.
– Adam Jensen
22 October 2014 в 06:46
Doh! У меня были смешанные кавычки в моих тегах, которые приводили к разрыву ссылки на jquery. Выполнение проверки в Chrome позволило мне увидеть, что файл не был правильно связан.
Добавить библиотеку перед запуском скрипта. Вы можете добавить любой из этих следующих CDN, чтобы запустить его.
Google:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
Microsoft
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.2.1.min.js"></script>
JQuery
Если вы хотите, чтобы любая другая версия JQuery cdn проверила эту ссылку .
После этого:
<script type="text/javascript">
$(function(){
//your stuff
});
or
$(document).ready(function(){
//your stuff
});
</script>
] Wordpress:
<script type="text/javascript">
var $ = jQuery;
jQuery(document).ready(function($){
//your stuff
});
</script>
Исходный файл jquery-1.2.6.min.js
не называется командой jQuery $()
выполняется раньше, чем <..src='jquery-1.2.6.min.js'>
.
Сначала запустите <.. src="/js/jquery-1.2.6.min.js..">
и убедитесь, что путь src прав, затем выполнить команду jquery
$(document).ready(function()
Это также может произойти, если есть проблема с сетью. Это означает, что даже несмотря на то, что «сценарии jquery» находятся на месте и включены до использования, поскольку jquery-скрипты недоступны, во время загрузки страницы, следовательно, определения в «$» рассматриваются как «неопределенные ссылки».
ДЛЯ НАЗНАЧЕНИЙ TEST / DEBUG :: Вы можете попытаться получить доступ к URL-адресу «jquery-script» в браузере. Если он доступен, ваша страница должна загружаться должным образом, иначе она покажет указанную ошибку (или другие ошибки, связанные с сценарием). Пример - http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js должен быть доступен в браузере (или в контексте браузера).
У меня была аналогичная проблема, в которой я смог загрузить html-страницу (используя скрипты) в моем браузере Windows-хоста, но не смог загрузить в vm-ubuntu. Решение проблемы с сетью позволило решить проблему.
Если вы делаете это в .Net и правильно ссылаетесь на файл сценария, и вы отлично выглядите jQuery, убедитесь, что ваши пользователи имеют доступ к файлу сценария. Проект, над которым я работал (коллега), имел свой web.config, запрещающий доступ к анонимным пользователям. Страница, над которой я работал, была доступна анонимным пользователям, поэтому у них не было доступа к файлу скрипта. Выложил следующее в web.config, и все было в мире:
<location path="Scripts">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
Это случилось со мной раньше.
Причина в том, что я подключаю Android к веб-просмотру с помощью JS. И я отправил параметр без кавычек.
js.sayHello(hello);
, и когда я изменил его на
js.sayHello('hello');
, он сработал.
Основная проблема - ReferenceError
. MDN указывает , что блок try
/ catch
является подходящим инструментом для задания. В моем случае, я получал неотображаемую ссылочную ошибку для оплаты sdk / library. Нижеследующее работает для меня.
try {
var stripe = Stripe('pk_test_---------');
} catch (e) {
stripe = null;
}
if(stripe){
//we are good to go now
}
Очевидно, что исправление заключается в загрузке любого SDK / библиотеки, например. jQuery, перед вызовом его методов, но try
/ catch
не позволяет вашему общему JavaScript блокировать ошибки, если вы запускаете этот общий скрипт на странице, которая не загружает какую-либо библиотеку, которую вы используете на подмножестве страниц.
Ошибка будет возникать и в следующих двух сценариях.
Итак, 3 вещи, которые необходимо соблюдать, - добавляются необходимые скрипты, проверяются, добавлены ли они в требуемый порядок и третьи синтаксические ошибки в вашем Java Script.
В моем случае я помещал свой файл .js
перед ссылкой сценария jQuery, поместив файл .js
после того, как ссылка jQuery скрипта решила мою проблему.
<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
<script src="http://code.jquery.com/ui/1.11.2/jquery-ui.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
<script src="exponential.js"></script>
Я, пожалуй, единственный человек, у которого была какая-то проблема, но я все равно отказался. Я хотел попытаться сделать мой скрипт асинхронным только для удовольствия. Тогда я забыл об этом, и когда я вышел в прямом эфире, файл [custom] .js загрузился только 50% времени перед jQuery.js.
Итак, я изменил
<script async src="js/script.js"></script>
to
<script src="js/script.js"></script>
:)
Хорошо, моя проблема была другой: в Chrome была модель Document Security.
. Внимательно изучив ответы здесь, было очевидно, что я как-то не загружал файлы jquery перед вызовом $(document).ready()
и т. д. функции. Тем не менее, все они были в правильных положениях.
В моем случае это было связано с тем, что я обращался к контенту через безопасное соединение HTTPS, тогда как страница пыталась загрузить размещенные в CDN данные из Google и т. Д. Решение должно состоять в том, чтобы хранить их локально, а затем включать затем напрямую, а не из CDN каждый раз.
Изменить : Другой способ сделать это - связать со всеми CDN -hosted как https: // вместо http: // - тогда модель не жалуется.
Это то, что решило это для меня. Первоначально я отправился в Google и скопировал и наклеил их предлагаемый фрагмент для jQuery на их странице CDN:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
В фрагменте нет HTTP:
или HTTPS:
в атрибуте src
, но мой браузер, FireFox, нуждался в этом, поэтому я изменил его на:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
Тогда он работал.
file://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
, и вам интересно, почему он не отображается в сетевой консоли.
– Pieter Ennes
1 April 2014 в 16:02
У меня была аналогичная проблема. Мой тестовый сервер отлично работал с «http». Однако это не удалось в производстве с SSL.
Таким образом, в производстве я добавил «HTPPS» вместо «HTTP», и в тесте я сохранил его как «HTTP».
wp_register_script ('jquery', ' http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js ', array (), null, false);
wp_register_script ('custom-script', plugins_url ('/js/custom.js', FILE), array ('jquery'));
wp_register_script ('jquery', ' https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js ', array (), null, false);
wp_register_script (' custom-script ', plugins_url (' /js/custom.js ', FILE), array (' jquery '));
Надеюсь, это поможет кому-то, кто работает над wordpress.
Если в wordpress может потребоваться изменить
$(document).ready(function() {
на
jQuery(document).ready(function($){
или добавить
var $ = jQuery;
до
$(document).ready(function() {
В моем случае у меня была эта ссылкаError, поскольку порядок вызовов скриптов был неправильным. Решено, что, изменив порядок:
<script src="js/index.js"></script>
<script src="js/jquery-1.10.2.js"></script>
-
<script src="js/jquery-1.10.2.js"></script>
<script src="js/index.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script type="text/javascript" src="local_xxx.js"></script>
У меня есть аналогичная проблема, и вы знаете, что из-за того, что сеть отключена, когда я тестирую веб-просмотр устройства Android, и я этого не понимаю, а локальная js не проблема загружаться, потому что она не нужна сеть. Это кажется смешным, но он тратит около 1 часа на то, чтобы выяснить это.