使用JQuery和CSS模拟超链接的用户单击事件的实现代码


Posted in Javascript onMay 23, 2012

在正式开始本文之前,先来简单介绍下HTML的<a>标签:使用<a>标签,我们可以在HTML页面上定义锚(anchor),锚有两种用法:
通过使用 href 属性,创建指向另外一个文档的链接(或超链接)
通过使用 name 或 id 属性,创建一个文档内部的书签(也就是说,可以创建指向文档片段的链接)
本文的内容与锚的第一种用法有关。

<%@ 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></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="https://3water.com/">三水点靠木</a> 
<br /> 
<br /> 
<span id="spanAGo" style="border: 1px solid black;">点击我,将调用以上超链接的单击事件</span> 
</div> 
</form> 
</body> 
</html>

以上代码的运行效果如下图所示:

使用JQuery和CSS模拟超链接的用户单击事件的实现代码

点击超链接,页面可以正常跳转;但点击标签,页面却不可以跳转;以上,在IE8和Chrome里都无法跳转(其他浏览器未测试)。所以,接下来要实现的效果,就是在点击标签的时候让页面跳转(也就是在调用超链接的单击事件时,让页面跳转),且写的代码要少,且最好是在一个地方处理,一个项目不可能就一个页面,一个页面不可能就一个超链接,且不能做的太死,怎么说锚的另一个作用是书签,别链接是可以跳转了,锚的书签作用被屏蔽了,且……。

使用JQuery和CSS模拟超链接的用户单击事件的实现代码

Main.css
a.forward 
{ 
}

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; 
}); 
});

修改过后的页面源码如下:
<%@ 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></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="https://3water.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”;
然后3是什么呢?然后想不出来然后了。
最后祝大家敲代码愉快。

首发:博客园->剑过不留痕

Javascript 相关文章推荐
JS event使用方法详解
Apr 28 Javascript
javascript 混合的构造函数和原型方式,动态原型方式
Dec 07 Javascript
JavaScript高级程序设计 阅读笔记(二十) js错误处理
Aug 14 Javascript
控制台报错object is not a function的解决方法
Aug 24 Javascript
JS实现双击编辑可修改状态的方法
Aug 14 Javascript
浅析使用BootStrap TreeView插件实现灵活配置快递模板
Nov 28 Javascript
浅谈Angular文字折叠展开组件的原理分析
Nov 24 Javascript
vue+element-ui+ajax实现一个表格的实例
Mar 09 Javascript
JavaScript 截取字符串代码实例
Sep 05 Javascript
layer更改皮肤的实现方法
Sep 11 Javascript
vue 解决provide和inject响应的问题
Nov 12 Javascript
Vue监视数据的原理详解
Feb 24 Vue.js
基于jquery tab切换(防止页面刷新)
May 23 #Javascript
jQuery下通过replace字符串替换实现大小图片切换
May 22 #Javascript
js面向对象 多种创建对象方法小结
May 21 #Javascript
Javascript 异步加载详解(浏览器在javascript的加载方式)
May 20 #Javascript
游览器中javascript的执行过程(图文)
May 20 #Javascript
js中scrollHeight,scrollWidth,scrollLeft,scrolltop等差别介绍
May 16 #Javascript
JS字符串累加Array不一定比字符串累加快(根据电脑配置)
May 14 #Javascript
You might like
全国FM电台频率大全 - 26 西藏自治区
2020/03/11 无线电
PHP 用session与gd库实现简单验证码生成与验证的类方法
2016/11/15 PHP
PHP双向链表定义与用法示例
2018/01/31 PHP
用js实现的检测浏览器和系统的函数
2009/04/09 Javascript
javascript实现点击按钮让DIV层弹性移动的方法
2015/02/24 Javascript
浅谈bootstrap源码分析之scrollspy(滚动侦听)
2016/06/06 Javascript
真正好用的js验证上传文件大小的简单方法
2016/10/27 Javascript
详解vue-cli 脚手架项目-package.json
2017/07/04 Javascript
JS点击图片弹出文件选择框并覆盖原图功能的实现代码
2017/08/25 Javascript
ionic选择多张图片上传的示例代码
2017/10/10 Javascript
jQuery实现通过方向键控制div块上下左右移动的方法【测试可用】
2018/04/26 jQuery
JavaScript引用类型Object常见用法实例分析
2018/08/08 Javascript
微信小程序视图容器(swiper)组件创建轮播图
2020/06/19 Javascript
解决echarts 一条柱状图显示两个值,类似进度条的问题
2020/07/20 Javascript
Python中遍历列表的方法总结
2019/06/27 Python
python time.sleep()是睡眠线程还是进程
2019/07/09 Python
python实时检测键盘输入函数的示例
2019/07/17 Python
python-opencv获取二值图像轮廓及中心点坐标的代码
2019/08/27 Python
Pytorch 实现focal_loss 多类别和二分类示例
2020/01/14 Python
python 图像判断,清晰度(明暗),彩色与黑白实例
2020/06/04 Python
如何在windows下安装配置python工具Ulipad
2020/10/27 Python
python切割图片的示例
2020/11/12 Python
python爬取天气数据的实例详解
2020/11/20 Python
简单掌握CSS3中resize属性的用法
2016/04/01 HTML / CSS
HTML5验证以及日期显示的实现详解
2013/07/05 HTML / CSS
印度在线购物网站:Paytmmall
2019/07/24 全球购物
初入社会应届生求职信
2013/11/18 职场文书
有关打架的检讨书
2014/01/25 职场文书
电气个人求职信范文
2014/02/04 职场文书
2014年小学校长工作总结
2014/12/08 职场文书
世界文化遗产导游词
2015/02/13 职场文书
小学班主任工作经验交流材料
2015/11/02 职场文书
求职信如何撰写?
2019/05/22 职场文书
jQuery实现广告显示和隐藏动画
2021/07/04 jQuery
CSS 使用 resize 实现图片拖拽切换预览功能(强大功能)
2021/08/23 HTML / CSS
Win11电脑显示本地时间与服务器时间不一致怎么解决?
2022/04/05 数码科技