javascript如何在自身onclick事件里改变onclick事件的参数值?

JavaScript021

javascript如何在自身onclick事件里改变onclick事件的参数值?,第1张

我推荐你使用事件绑定去做,代码会比较简单。一般是不推荐onclick属性的,比较新的代码都会用事件榜定。

加一个辅助ID,如:

<a id="yourid" href="javascript:void(0)">对外隐藏</a>

jquery有一个data方法,可以为元素存储一个值。在点击链接时,可以动态地改变真假值,来改变事件的行为。这样不需要改变已经绑定的事件。

$("#yourid").data("state", false)

$("#yourid").click(function(){

    var s = $(this).data("state")

    // 判断s的值,隐藏或显示

    // 这个函数的内容需要修改,这里只做一个示例

    updateShow("1014", s, $(this))

    // 改变state的值,下次就是true了

    $(this).data("state", !s)

})

还有一种办法,使用toggle切换

$("#yourid").click(function(){

    $("#yourid").toggle(

        function(o){ updateShow('1014', true, $(this) }, 

        function(o){ updateShow('1014', false, $(this) }

    )

})

绑定一个事件,在事件中调用toggle。这样每次点击会在两个不同的函数间切换。第一次点击执行第一个函数,第二次点击执行第二个函数。

您的采纳就是我的动力!

<!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>

<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8" />

<meta name="keywords" content="焦点图" />

<meta name="description" content="焦点图代码" />

<title>焦点图</title>

<script type="text/javascript" src="http://www.jinchuwenhua.com/templets/default/js/jquery.js"></script>

<script type="text/javascript" src="http://www.jinchuwenhua.com/templets/default/js/slide.js"></script>

</head>

<body>

<!-- 代码 开始 -->

<style>

.ck-slide ul { margin: 0padding: 0list-style-type: none}

.ck-slide { position: relativeoverflow: hidden}

.ck-slide ul.ck-slide-wrapper { position: absolutetop: 0left: 0z-index: 1margin: 0padding: 0}

.ck-slide ul.ck-slide-wrapper li { position: absolute}

.ck-slide .ck-prev, .ck-slide .ck-next { position: absolutetop: 50%z-index: 2width: 35pxheight: 70pxmargin-top: -35pxborder-radius: 3pxopacity: .15background: redtext-indent: -9999pxbackground-repeat: no-repeattransition: opacity .2s linear 0s}

.ck-slide .ck-prev { left: 5pxbackground: url(templets/default/images/arrow-left.png) #000 50% no-repeat}

.ck-slide .ck-next { right: 5pxbackground: url(templets/default/images/arrow-right.png) #000 50% no-repeat}

.ck-slidebox { position: absoluteleft: 50%bottom: 0pxz-index: 30hright:30pxwidth:100%}

.ck-slidebox ul { height: 30pxpadding: 0 4pxbackground: rgba(0,0,0,0.5)text-align:center}

.ck-slidebox ul li { float: leftheight: 30pxmargin: 0px 4pxline-height:30pxcolor:#fffdisplay:none}

.ck-slidebox ul li em { display: blockwidth: 100%height: 30px cursor: pointerfont-size:14px}

.ck-slidebox ul li.current em {color:#fff }

.ck-slidebox ul li em:hover { }

.ck-slide { width: 600pxheight: 400pxmargin: 0 auto}

.ck-slide ul.ck-slide-wrapper { height: 400px}

.ck-slide-wrapper li {display:none}

.ck-slidebox ul li{display:none}

.current{display:block!important}

</style>

<div class="ck-slide">

<ul class="ck-slide-wrapper">

<li>

<a target="_blank" href="http://www.jinchuwenhua.com/a/xinwen/2015/1014/307.html" target="_blank"><img id="slide-img-1" src="http://www.jinchuwenhua.com/uploads/allimg/151014/1-151014114S60-L.jpg" class="slide" alt="国考明起报名招2.7万人 首次仅面向体制外招录" style='width:600px'/></a>

</li>

<li>

<a target="_blank" href="http://www.jinchuwenhua.com//a/xinwen/2015/1014/289.html" target="_blank"><img id="slide-img-2" src="http://www.jinchuwenhua.com/uploads/151014/1-151014092105J3.jpg" class="slide" alt="中关村“变形记”:从电子卖场到7.2公里的创业大街" style='width:600px'/></a>

</li>

<li>

<a target="_blank" href="http://www.jinchuwenhua.com/a/xinwen/2015/1014/290.html" target="_blank"><img id="slide-img-3" src="http://www.jinchuwenhua.com/uploads/allimg/151014/1-151014092F30-L.jpg" class="slide" alt="金星大聊两性话题 辣评娱乐圈男星:没我想睡的" style='width:600px'/></a>

</li>

</ul>

<a href="javascript:" class="ctrl-slide ck-prev">上一张</a><a href="javascript:" class="ctrl-slide ck-next">下一张</a>

<div class="ck-slidebox">

<div class="slideWrap">

<ul class="dot-wrap">

<li><em>国考明起报名招2.7万人 首次仅面向体制外招录</em></li>

<li><em>中关村“变形记”:从电子卖场到7.2公里的创业大街</em></li>

<li><em>金星大聊两性话题 辣评娱乐圈男星:没我想睡的</em></li>

</ul>

</div>

</div>

</div>

<!--图片轮播结束-->

<!-- 代码 结束 -->

<script>

$('.ck-slide').ckSlide({

autoPlay: true

})

</script>

</body>

</html>