所以我正在创建一个网站并在页面中移动了一些脚本,突然间,一些笔记停止在我的客户端PC上运行。我不得不做一些打击并尝试它最终工作,但我无法弄清楚是什么导致了这个问题。
这是它工作时的结构
<html>
<head>
<script type='text/javascript' src='somepath/script/jquery.js'></script>
<script type='text/javascript'>
//some custom jquery script
</script>
</head>
<body>
....lots of stuff
</body>
</html>
<script type='text/javascript' src="sompath/some_jquery_plugin.js'></script>
<script type='text/javascript'>
//some custom jquery script
</script>
这是工作时的结构
<html>
<head>
<script type='text/javascript' src='somepath/script/jquery.js'></script>
<script type='text/javascript'>
//some custom jquery script
</script>
</head>
<body>
....lots of stuff
</body>
</html>
<script type='text/javascript' src='somepath/script/jquery.js'></script>
<script type='text/javascript' src="sompath/some_jquery_plugin.js'></script>
<script type='text/javascript'>
//some custom jquery script
</script>
即注意最后包含额外的jquery.js ....
可能的原因导致了什么?特别是因为它在所有浏览器上运行我的系统而不是我的客户。
的 的 ** * 更新的 * < / EM> ** * **** 我认为jquery停止在中间的某个地方工作......即我最后有这个脚本
$('#start').val('0000.00.00 00:00');
$('#end').val('0000.00.00 00:00');
但是带有“start”和“end”id的字段没有显示给定的数据。因此需要额外包含jquery。
答案 0 :(得分:0)
第一个内联脚本是否使用jQuery.noConflict
(或$.noConflict
)?您的示例中的“....lots of stuff
”是否会加载一些其他库,例如可能重新定义$
对象的Prototype?这可能是问题所在。
尝试将所有代码放在第二个脚本标记内:
(function ($) {
// YOUR CODE HERE
}(jQuery));
(并删除第二个jQuery包含),看看是否有帮助。
如果您的代码已经包含在:
$(document).ready(function () {
// your code
});
或:
$(function () {
// your code
});
然后尝试将其更改为:
jQuery(document).ready(function ($) {
// your code
});
或:
jQuery(function ($) {
// your code
});
(请注意,它是function ($)
而不是function ()
)
(您可能还需要将插件放在第一个jQuery的下方,以防它不是以$
未定义或重新定义的方式编写的,但通常对于正确编写的插件不是必需的。 )