JavaScript之实现单选复选、菜单以及返回顶部实例

1、单选、复选以及反选实例

其实主要是利用for循环提取标签,然后更改checked属性值实现的

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <div>
        <input type="button" value="全选" onclick="CheckAll();"/>
        <input type="button" value="取消" onclick="CancleAll();"/>
        <input type="button" value="反选" onclick="Reverse();">
        <!--//ondblclick表示双击-->
    </div>
<table>
    <thead>
    <th>序号</th>
    <th>用户名</th>
    <th>年龄</th>
    </thead>
    <tbody id="tb">
    <tr>
        <td><input class="c1" type="checkbox"/></td>
        <td>jay</td>
        <td>23</td>

    </tr>
    <tr>
        <td><input class="c1" type="checkbox"/></td>
        <td>Bob</td>
        <td>23</td>

    </tr>
    <tr>
        <td><input class="c1" type="checkbox"/></td>
        <td>peter</td>
        <td>23</td>

    </tr>
    </tbody>
<script type="text/javascript">
    function CheckAll() {
        var tb = document.getElementById(‘tb‘);
        var checks = tb.getElementsByClassName(‘c1‘);
        for (var i=0;i<checks.length;i++){
            var current_check = checks[i];
            current_check.checked = true;
//        循环每一个标签
        }
    }
    function CancleAll() {
        var tb = document.getElementById(‘tb‘);
        var checks = tb.getElementsByClassName(‘c1‘);
        for (var i=0;i<checks.length;i++){
            var current_check = checks[i];
            current_check.checked = false;
//        循环每一个标签
        }
    }
    function Reverse() {
        var tb = document.getElementById(‘tb‘);
        var checks = tb.getElementsByClassName(‘c1‘);
        for (var i = 0; i < checks.length; i++) {
            var current_check = checks[i];
            if (current_check.checked) {
                current_check.checked = false;
            } else {
                current_check.checked = true;
            }

        }
    }

</script>

</table>
</body>
</html>

  2、tab菜单实例

利用一种对应关系,实现一个tab菜单,主要思路是绑定每两个选项的关系,即当选中一个,则显示出与之对应的选项框,利用for循环实现显示与否

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>菜单</title>
    <style>
        ul{
            list-style: none;
            margin: 0;
            padding: 0;
        }
        ul li{
            float: left;
            background-color: blue;
            color: black;
            padding: 10px 12px;
        }
        .clearfix:after {
            display: block;
            content: ‘.‘;
            height: 0;
            visibility: hidden;
            clear: both;
        }
        .tab-menu .title{
            background-color: bisque;
        }

        .tab-menu .content{
            border: 1px solid black;
            min-height: 150px;
        }

        .hide{
            display: none;
        }
        .tab-menu .title .active{
            background-color: white;
            color:red ;
        }
        /*选中时候的状态*/
    </style>
</head>
<body>
<div style="width: 400px;margin: 0 auto">
    <div class="tab-menu">
        <div class="title clearfix">
            <ul>
                <li target=‘h1‘ class="active" onclick="Show(this);">价格趋势</li>
                <li target=‘h3‘ onclick="Show(this);">市场分布</li>
                <li target=‘h2‘ onclick="Show(this);">其他</li>
            </ul>
        </div>
        <div id="jay" class="content">
            <div con="h1">contnet1</div>
            <div con="h2" class="hide">contnet2</div>
            <div  con="h3" class="hide">contnet3</div>
        </div>
    </div>

</div>

<script>
    function Show(ths) {
        //args表示当前标签
        var target=ths.getAttribute(‘target‘);
        //给自己添加样式active,兄弟标签则去掉
        ths.className=‘active‘;
        var brothers = ths.parentElement.children;
        for (var i=0;i<brothers.length;i++){
            if(ths == brothers[i]){
            }else{brothers[i].removeAttribute(‘class‘)}
        }

    var contents = document.getElementById(‘jay‘).children;
    for(var j=0;j<contents.length;j++){
        var current_content =contents[j];
        var con = current_content.getAttribute(‘con‘)
        if(con == target){
            current_content.classList.remove(‘hide‘)
        }else{current_content.className=‘hide‘}
    }

    }

</script>

</body>
</html>

  执行结果如图所示,点击则会切换

3、往页面列表里面自动添加输入的文本内容

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<div >
    <input type="text">
    <input type="button" value="添加" onclick="foo(this)">
</div>
<div>
    <ul id="commentList">
        <li>jay</li>
        <li>BOb</li>
    </ul>
</div>
<script>
    function foo(ths) {
        var val = ths.previousElementSibling.value;
        console.log(val);
        var ret = document.getElementById(‘commentList‘);
        var str = "<li>" + val + "</li>";
        ret.insertAdjacentHTML(‘beforeEnd‘, str);//该方法只能添加字符串
        ths.previousElementSibling.value = ‘‘;

//    第二种方法
        var tag = document.createElement(‘li‘);
        tag.innerText = val;

        ret.appendChild(tag);
    }
</script>

</body>
</html>

  执行结果如

可以往下面随便添加内容

insertAdjacentHTML第一个参数有多种用法,如图

  3、克隆移动标签

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <h2 id="h1">333</h2>
    <div id="container">
        <div class="item">1</div>
        <div class="item">1</div>
    </div>

<script>
    var h =document.getElementById(‘h1‘);
    var c=document.getElementById(‘container‘);

    var newH = h.cloneNode(true);//没有true参数的话,不会克隆标签里面的东西
    c.appendChild(newH)

</script>

</body>
</html>

  执行结果如图

4、

				
时间: 2024-11-11 05:56:57

JavaScript之实现单选复选、菜单以及返回顶部实例的相关文章

JS-001-JavaScript 操作常见 web 元素之一-单选复选

此文主要针对 web 页面中常见元素(例如:单选按钮.复选按钮)的 JavaScript 操作,进行简单的源码示例演示,敬请小主们参阅.若有不足之处,敬请大神指正,不胜感激! 话不多言了,直接上码: 1 <html> 2 <head> 3 <meta charset='utf-8'> 4 5 <title>JS-001-JavaScript 操作常见 web 元素之一-单选复选</title> 6 7 <link rel="sty

[SAP ABAP开发技术总结]选择屏幕——按钮、单选复选框

目录导航 声明:原创作品,转载时请注明文章来自SAP师太博客,并以超链接形式标明文章原始出处,否则将追究法律责任!原文出自: 12.6.         按钮.单选复选框.下拉框的FunCode. 91 12.6.1.     选择屏幕中的按钮... 92 12.6.2.     选择屏幕中的单选/复选按钮:点击时显示.隐藏其他屏幕元素... 92 12.6.     按钮.单选复选框.下拉框的FunCode 如果复选框与单选按钮没有设置Function Code,则它们就会像普通的输入框一样,

关于单选复选框

<!DOCTYPE html><html><head><meta charset="utf-8"><title>单选复选框</title><link href="style.css" rel="stylesheet"></head><body bgcolor="pink"> <center><h1 st

Asp.net自定义单选复选框控件

将常用的jquery插件封装成控件也是个不错的选择 下面是效果的简单颜色,由于博客系统的限制没法完整演示最终效果,请下载示例查看 Asp.netWeb APIC#Javascript 1.新建类库项目,创建数据源类 [Serializable] public class Select2Item { public bool Selected { get; set; } public string Text { get; set; } public string Value { get; set;

单选复选框的js代码取值

单选框 复选框选中后的js代码处理 <script type="text/javascript"> function check(){ document.getElementById("checked").style.display="block"; var radio=document.getElementsByName("sex");//此处不能getElementById(),否则只会取第一个的值 for(v

单选 复选按钮 样式

<!doctype html> <html> <head> <meta charset="utf-8"> <title>选择框样式</title> <style> label {font-size:12px;cursor:pointer;} label i {font-size:12px;font-style:normal;display:inline-block;width:12px;height:1

单选复选框的制作

一.选择框 在使用表单设计调查表时,为了减少用户的操作,使用选择框是一个好主意,html中有两种选择框,即单选框和复选框,两者的区别是单选框中的选项用户只能选择一项,而复选框中用户可以任意选择多项,甚至全选. 语法: <input type="radio/checkbox" value="值" name="名称" checked="checked"/> 1.当type="radio"时,为单选框

Android 单选/复选控件

1.单选控件 RadioButton 需要结合RadioGroup使用 2.复选控件 CheckBox 3.带选择器的文本控件 CheckedTextView 类CheckedTextView继承TextView并实现Checkable接口.当结合ListView的setChoiceMode方法并设定为CHOICE_MODE_SINGLE或者 CHOICE_MODE_MULTIPLE,而非CHOICE_MODE_NONE时,使用此类是很有用的. 和ListView结合使用时,注意设置chioce

文字与单选复选框对齐

<style> .box3>input { vertical-align: middle; margin-top: -2px; margin-bottom: 1px } </style> <p> vertical-align: middle;margin-top: -2px;margin-bottom: 1px</p> <p>把此元素放置在父元素的中部</p> <div class="box3">