js鼠标移入事件,限制执行次数

js鼠标移入事件,限制执行次数,第1张

<!DOCTYPE HTML>

<html>

<head>

    <title>TestMouse</title>

    <meta charset="utf-8"/>

</head>

<style>

    body{

        background-color: gray;

    }

    rect{

        position: relative;

        display: block;

        width: 100px;

        height: 100px;

        background-color: red;

        margin: 0 auto;

        cursor: pointer;

        -moz-border-radius: 12px;

        -webkit-border-radius: 12px;

        border-radius: 12px;

        border:3px solid yellow;

    }

    timeBox{

        position: relative;

        display: block;

        margin:10px auto;

        width: 300px;

        height: 35px;

        text-align: center;

    }

</style>

<body>

<div class="rect" id="rect" onclick="setCount()"></div>

<input type="text"  class="timeBox" id="timeBox" disabled/>

<script>

    /  主要思路是:

        一开始时标签上是有onclick属性的,然后点击之后进入方法,

        便把onclick事件移除,且

        方法中有setTimeout函数,设置时间的时间到期之后便会执行,

        执行的功能就是给标签添加onclick事件,那么点击就会又有效果了

    /

   var rect=documentgetElementById("rect");

   var timer=1;

   var clickCount=0;

   var runCount=0;

   //addEvnetListner有兼容性问题,此处我只针对Mozilla系列

   rectaddEventListener("click",function(){clickCount++;},false);

    function setCount(){

        rectonclick=null;

        timer=setTimeout(timeOver,2000);

    }

    function timeOver(){

        runCount++;

        rectonclick=setCount;

        documentgetElementById("timeBox")value="点击次数:"+clickCount+" ,执行次数:"+runCount;

        //clearTimeout(timer);

    }

</script>

</body>

</html>

使用jQuery的话,相对就比较简单。

jQuery有个toggle(fn, fn2, [fn3, fn4, ])

其中fn,fn2,fn3为对应的点击次数所执行的事件。

即第一次点击执行fn函数,第二次点击执行fn2函数,依此类推。

当结束最后一此点击的函数后,继续点击将从第一次点击开始。

在页面上放一个隐藏域,把xx值赋给隐藏域,然后在后台获取就行了。比如这样

<script type="text/javascript">

var xx = 0;

function CS() {

var tt = documentgetElementById("DIV");

var btn = documentcreateElement("input");

btntype = "button";

btnvalue = "ADD";

btnonclick = function () {

CS();

}

ttappendChild(btn);

xx++;

documentgetElementById("txt_GetInfo")value = xx;<!-把xx赋值给控件->

alert(xx);

}

</script>

<input id="Button1" type="button" value="button" onclick="CS()" />

<div id="DIV"> </div>

<div style="display:none"><input id="txt_GetInfo" type="text" runat=“server”/></div><!-一定要有runat=“server”->

1、你之前的答案是对的。有问题的是你全局变量的定义有问题,把你代码里的 i 变量的定义移到方法之外定义即可。

2、但是比较奇怪的是,你的代码里对于i变量没有进行奇数与偶数的处理,不知道是不是你代码没有贴全。

3、这个代码逻辑是比较简单的。具体代码如下图所示。

根据函数作用域链,变量是一层一层向作用域链外部逐层寻找距离最近的定义。所以,在函数内部,是可以访问到外部的,也就是上级的变量。但是,在函数外部,是无法访问到函数内部的变量的。如果你想访问,可以通过,闭包,定义全局变量等方法来获取。

具体代码我就是写了,网上找一下到处是代码,我告诉你方法就行了

楼主说的,是静态页面,但是,你要实现的是统计之类的动态功能,那么我建议你用AJAX:

1、用JS写一段AJAX处理程序,只要向统计程序发起一个请求就可以,统计程序只用来计算,下载次数

2、当用户点击按钮的时候,调用那一段AJAX

网上很多AJAX的代码,你自己看一下,很容易的

添加onclick事件,获取href属性就知道具体的url地址了

<!DOCTYPE html>

<html>

<body>

<script>

function aclick(self){

   alert(selfhref);

}

</script>

<a href="ddddh" onclick='aclick(this)'>测试1</a>

<a href="dddd2h" onclick='aclick(this)'>测试2</a>

</body>

</html>

以上就是关于js鼠标移入事件,限制执行次数全部的内容,包括:js鼠标移入事件,限制执行次数、JS实现鼠标点击一个按钮不同次数触发不同事件、Asp.net 后台如何获取前台按钮的点击次数如何将JS代码中的值在后台使用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9549506.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存