代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm2.aspx.cs" Inherits="Web.WebForm2" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat="server"> <title>模拟超链接单击事件-www.jb200.com</title> <script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script> <script type="text/javascript"> $(document).ready(function () { // 单击spanAGo,调用超链接的单击事件 $('#spanAGo').click(function () { $('#aGo').click(); }); }); </script> </head> <body style="font-size: 12px;"> <form id="form1" runat="server"> <div> <a id="aGo" href="http://www.jb200.com/">脚本学堂</a> <br /> <br /> <span id="spanAGo" style="border: 1px solid black;">点击我,将调用以上超链接的单击事件</span> </div> </form> </body> </html>
效果如下图:
点击超链接,页面可以正常跳转;但点击标签,页面却不可以跳转;以上,在IE8和Chrome里都无法跳转(其他浏览器未测试)。
接下来实现:
点击标签的时候让页面跳转(也就是在调用超链接的单击事件时,让页面跳转),且写的代码要少,且最好是在一个地方处理,一个项目不可能就一个页面,一个页面不可能就一个超链接,且不能做的太死,怎么说锚的另一个作用是书签,别链接是可以跳转了,锚的书签作用被屏蔽了,且……。
1、Main.css
a.forward
{
}
2、Main.js
/// <reference path="jquery-1.4.1-vsdoc.js" /> $(document).ready(function () { // 使超链接支持click事件,方便JavaScript调用 $('a.forward').click(function () { location.href = $(this)[0].href; return false; }); });
3、修改后的代码。
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm2.aspx.cs" Inherits="Web.WebForm2" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat="server"> <title>Jquery模拟超链接中的单击事件-www.jb200.com</title> <link type="text/css" rel="Stylesheet" href="Styles/Main.css" /> <script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script> <script type="text/javascript" src="Scripts/Main.js"></script> <script type="text/javascript"> $(document).ready(function () { // 单击spanAGo,调用超链接的单击事件 $('#spanAGo').click(function () { $('#aGo').click(); }); }); </script> </head> <body style="font-size: 12px;"> <form id="form1" runat="server"> <div> <a id="aGo" class="forward" href="http://www.jb200.com">脚本学堂</a> <br /> <br /> <span id="spanAGo" style="border: 1px solid black;">点击我,将调用以上超链接的单击事件</span> </div> </form> </body> </html>
点击标签,页面完美跳转.
总结:
模拟超链接的用户单击事件,需要做到如下几点:
导入外部CSS文件,Main.css,导入外部JavaScript文件Main.js(必须在导入JQuery文件之后导入);
给超链接添加CSS类“forward”;
脚本学堂,祝大家学习进步咯。