Javascript 如何将jQuery脚本包含到include.js文件中?
如果这是一个简单的问题,请原谅我 我的应用程序中嵌入了如下所示的jQuery脚本:Javascript 如何将jQuery脚本包含到include.js文件中?,javascript,jquery,Javascript,Jquery,如果这是一个简单的问题,请原谅我 我的应用程序中嵌入了如下所示的jQuery脚本: <script type='text/javascript'>//<![CDATA[ $(function(){ $('#div1).on('click', function () { $('#divTitle').show(); }); $('#div1').on('click', function () { $('#divTitle
<script type='text/javascript'>//<![CDATA[
$(function(){
$('#div1).on('click', function () {
$('#divTitle').show();
});
$('#div1').on('click', function () {
$('#divTitle').slideUp();
});
});//]]>
</script>
<script type='text/javascript'>//<![CDATA[
$(function(){
$('#div2').on('click', function () {
$('#secDiv').show();
});
$('#div2).on('click', function () {
$('#secDiv).slideUp();
});
});//]]>
</script>
//
但现在它不再工作了
它应该显示和隐藏某些图标
我做错了什么?您想在文件中包含Javascript,对吗 假设jQuery之前已包含: Html
<script type="text/javascript" src="path/to/include.js"></script>
有几件事。首先放下
和CDATA
标记。它们在外部javascript文件中是不必要的(可能包含在HTML中的
标记中)
其次,您需要用$(document.ready()
包装javascript。您可能在当前HTML的底部有这个javascript(或者至少在它绑定到的HTML元素之后),并且由于这个外部JS文件很可能在头中加载,所以HTML元素不在那里绑定
新增include.js:
function showIcon() {
toggleButtonIcon('[Widget dijit.form.ToggleButton, pan]');
navToolbar.activate(esri.toolbars.Navigation.PAN);
/*dijit.registry.byClass("dijit.form.ToggleButton").forEach(function(togbtn) {
if (togbtn == '[Widget dijit.form.ToggleButton, pan]') {
togbtn.attr("checked", true);
}
else
{
togbtn.attr("checked", false);
}
});
*/
}
$(document).ready(function() {
$(function(){
$('#div1).on('click', function () {
$('#divTitle').show();
});
$('#div1').on('click', function () {
$('#divTitle').slideUp();
});
});
$(function(){
$('#div2').on('click', function () {
$('#secDiv').show();
});
$('#div2).on('click', function () {
$('#secDiv').slideUp();
});
});
});
还要验证HTML文件中是否有类似的内容:
<script type="text/javascript" src="path/to/include.js"></script>
我假设在几个地方缺少的引号只是打字错误。第2行仍然缺少:$('div1')
=>$('div1')
如果它仍然不工作,请删除函数showIcon
,然后尝试一下你的或@Michael是否工作。我将尝试删除showIcon,看看会发生什么。请看一个html+javascript的小东西,它可能是其他东西…好的,我能够创建一个单独的js文件并将它们转储到那里,现在它可以工作了。这不是我想要的,但我现在可以接受。顺便说一下,为我工作的是迈克尔。
function showIcon() {
toggleButtonIcon('[Widget dijit.form.ToggleButton, pan]');
navToolbar.activate(esri.toolbars.Navigation.PAN);
/*dijit.registry.byClass("dijit.form.ToggleButton").forEach(function(togbtn) {
if (togbtn == '[Widget dijit.form.ToggleButton, pan]') {
togbtn.attr("checked", true);
}
else
{
togbtn.attr("checked", false);
}
});
*/
}
$(document).ready(function() {
$(function(){
$('#div1).on('click', function () {
$('#divTitle').show();
});
$('#div1').on('click', function () {
$('#divTitle').slideUp();
});
});
$(function(){
$('#div2').on('click', function () {
$('#secDiv').show();
});
$('#div2).on('click', function () {
$('#secDiv').slideUp();
});
});
});
<script type="text/javascript" src="path/to/include.js"></script>