单击一个超链接触发事件

1.用a标签的onclick

<a href="#" onclick="js代码">

这种写法呢,存在一种弊端,就是点击后会刷新一次页面,回到页面顶端。

想不刷新如何做的呢?

复制代码 代码如下:
<a href="javascript:void(0)" onclick="js代码">

2.#与javascript:void(0)的区别

超链接为“死链”时,使用#与javascript:void(0);的区别。

Void(0)没有用的值,不会去任何地方,就没有意义了

而#会刷新一次当前页面。

3.再或者、用a标签的href

<a href="javascript:  js代码   ">

只有超链接的href中的JavaScript中才需要加“javascript:”,

因为它不是事件,而是把”javascript:”看成像“http:”、“ftp:”、“thunder://”、“ed2k://”、“mailto:”一样的网络协议,交由js解析引擎处理。

方法的特别强调

1.不要另起一行

一般在js中编写大括号都是直接跟在后面而不要另起一行,

原因是js会在语句末尾自动增加”分号”,如果将大括号另起一行,则return语句后自动增加“分号”后,返回值就变成了undefined了。

2.不需要声明返回值类型

不需要声明返回值类型、参数类型。函数定义以function开头。

JavaScript中不像C#和java那样要求所有路径都有返回值没有返回值就是undefined。

3.没有方法重载

JavaScript中没有方法重载。

方法中写参数叫命名参数

用户调用计算多个数的和的方法,如何获取方法中有多少个参数呢"codetitle">复制代码 代码如下:
var f1=function(p1,p2){ return p1+p2; };//将函数赋值给一个变量

匿名函数没法调用,只能赋值给一个变量,由于是赋值语句,后面要加分号

应用:

复制代码 代码如下:
document.getElementById(‘btn').onclick=function(){}

2.方式二

复制代码 代码如下:
(function(p1,p2){alert(p1+p2);})(20,30);

3.方式三

复制代码 代码如下:
var m1=new Function(“p1”,”p2”,”p3”,”return p1+p2+p3”);
alert(m1(1,2,3));性能低

这种匿名函数的用法在jQuery中的非常多

扩展方法prototype

通过类对象的prototype设置扩展方法,

扩展方法的声明要在使用扩展方法之前执行。JS的函数没有专门的函数默认值的语法,但是可以不给参数传值,不传值的参数值就是undefined,自己做判断来给默认值。

复制代码 代码如下:
var msg ='xiaoming@111.com';
String.prototype.isEmail = function(){
return this.indexof('@')!= -1 "" src="/UploadFiles/2021-04-02/201502280910373.png">

2.注册事件

一定是在页面加载完成了以后,才能给页面的元素注册事件。

所以 onload = function(){

     //在这里注册事件

};

浅析JavaScript事件和方法

页面加载事件

复制代码 代码如下:
  <script type="text/javascript">
       //刷新
       //location.reload();
          onload=function(){
           alert("页面加载了");
          };
          onunload =function(){
           alert("页面关闭了");
          };
          onbeforeunload= function(){
             alert("页面关闭之前触发");
          };
  </script>

浅析JavaScript事件和方法

以上就是本文的全部内容了,希望能够让大家对javascript的事件和方法有新的认识

标签:
JavaScript,事件,方法

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
评论“浅析JavaScript事件和方法”
暂无“浅析JavaScript事件和方法”评论...

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。