JavaScript中如何具体实现排他锁机制?
- 内容介绍
- 相关推荐
本文共计614个文字,预计阅读时间需要3分钟。
在博客中,小熊分享了更新相关操作元素的方法。若同一组元素中需特定一个元素实现特定样式,可利用循环排序思想。具体算法如下:
在前面的博客中,小熊更新了相关操作元素的方法,但是如果有同一组元素,我们想要某一个元素实现某种样式,这时需要怎么办呢? 这里就要用到循环的排他思想。
排他思想的算法就是:
排除掉其他的(包括自己),然后再给自己设置想要实现的效果。总而言之,排他思想的实现步骤就是所有元素全部清除与设置当前元素。
可以简单理解为:
- 所有元素全部清除样式(干掉其他人)
- 给当前元素设置样式 (留下我自己)
需要注意的是:这里的顺序不能颠倒。
比如,页面有五个按钮,我们想要给它实现循环点击事件:当点到哪个按钮,就让哪个按钮变色,应该怎样操作呢?
1、我们先创建五个按钮。
如下所示:
<button>按钮1</button> <button>按钮2</button> <button>按钮3</button> <button>按钮4</button> <button>按钮5</button>
2、获取元素
<script> //获取元素 var btn = document.getElementsByTagName('button'); console.log(btn); </script>
3、循环遍历打印按钮
for(var i =0; i<btn.length;i++){ console.log(btn[i] }
4、在第一个for循环里面给每个按钮添加点击事件。首先在内循环里面清除掉所有按钮的样式,然后在外循环里给当前点击的按钮添加样式。
btn[i].onclick = function(){ for(var j =0;j<btn.length;j++){ btn[j].style.backgroundColor = ''; } this.style.backgroundColor = 'blue'; }
最终效果为:
接下来我们举几个例子看看吧!
1、实现简单的tab栏切换的功能
代码如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta www.558idc.com/stgf.html转载请说明出处】
本文共计614个文字,预计阅读时间需要3分钟。
在博客中,小熊分享了更新相关操作元素的方法。若同一组元素中需特定一个元素实现特定样式,可利用循环排序思想。具体算法如下:
在前面的博客中,小熊更新了相关操作元素的方法,但是如果有同一组元素,我们想要某一个元素实现某种样式,这时需要怎么办呢? 这里就要用到循环的排他思想。
排他思想的算法就是:
排除掉其他的(包括自己),然后再给自己设置想要实现的效果。总而言之,排他思想的实现步骤就是所有元素全部清除与设置当前元素。
可以简单理解为:
- 所有元素全部清除样式(干掉其他人)
- 给当前元素设置样式 (留下我自己)
需要注意的是:这里的顺序不能颠倒。
比如,页面有五个按钮,我们想要给它实现循环点击事件:当点到哪个按钮,就让哪个按钮变色,应该怎样操作呢?
1、我们先创建五个按钮。
如下所示:
<button>按钮1</button> <button>按钮2</button> <button>按钮3</button> <button>按钮4</button> <button>按钮5</button>
2、获取元素
<script> //获取元素 var btn = document.getElementsByTagName('button'); console.log(btn); </script>
3、循环遍历打印按钮
for(var i =0; i<btn.length;i++){ console.log(btn[i] }
4、在第一个for循环里面给每个按钮添加点击事件。首先在内循环里面清除掉所有按钮的样式,然后在外循环里给当前点击的按钮添加样式。
btn[i].onclick = function(){ for(var j =0;j<btn.length;j++){ btn[j].style.backgroundColor = ''; } this.style.backgroundColor = 'blue'; }
最终效果为:
接下来我们举几个例子看看吧!
1、实现简单的tab栏切换的功能
代码如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta www.558idc.com/stgf.html转载请说明出处】

