我正在学习JQuery,遇到一个简单的代码问题。
当我点击#needle时,它应该切换#leftmenu。但#needle的点击功能根本没有触发。甚至尝试了一些其他元素点击功能(例如img / button..etc。)而不是#needle div,但两者都没有用。
这是Masterpage:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link href="Style/style.css" rel="stylesheet" />
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="js/js_default.js"></script>
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<form id="form1" runat="server">
<div id="pageContent">
<div id="header">
<div id="top">
//..
</div>
</div>
<div id="content">
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
<div id="footer">
//..
</div>
</div>
</form>
</body>
</html>
这是HTML:
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<div id="container">
<div id="leftmenu">
//some menu..
</div>
<div id="needle">
//..
</div>
<div id="stid">
//..
</div>
<div id="stin">
//..
</div>
</div>
</asp:Content>
和JQuery
$(document).ready(function () {
$("#needle").click(function () {
$("#leftmenu").toggle();
});
});
答案 0 :(得分:0)
您的代码正常JSFIDDLE DEMO
可能是加载了两个版本的jQuery(不推荐使用),从第二个版本调用$.noConflict( true )
会将全局范围的jQuery变量返回给第一个版本的jQuery变量。 More INFO
答案 1 :(得分:0)
有一段时间我问了这个问题,但我发现了问题:
我使用文件夹来组织aspx页面。有子文件夹很好组织,但它有一些问题,因为JQuery不适用于单独的文件夹中的页面。
所以,在asp.net中,我应该像这样描述脚本:
<script type="text/javascript" src='<%= ResolveUrl("~/Js/file.js") %>'></script>