23 自定义属性

需求:经过盒子加边框

<style>
    *{
        margin: 0;
        padding: 0;
    }
    div{
        width: 200px;
        height: 150px;
        background: skyblue;
        float: left;
        margin-left: 10;
        border: 2px solid skyblue;  /*盒子不会显示变大 */
    }
</style>
<body>
 <div></div> 
 <div></div> 
 <div></div> 
 <div></div> 
 <div></div> 
 <div></div> 
<script src="publick.js"></script>
 <script>
   var divs = document.getElementsByTagName("div");//集合
   for(var i = 0; i < divs.length; i++){
       //鼠标经过和离开
       divs[i].onmouseover = function(){
           //自己、自身
           this.style.border = "2px solid pink";
       }
       //鼠标离开
       divs[i].onmouseout = function(){
           this.style.border = "";
       }
   }
 </script>
</body>

需求:在线搜索效果

 <style>
    input{
        color: gray;
    }
</style>
<body>
<input type="text" value="请输入搜索内容" id="txt">
<script src="publick.js"></script>
  <script>
   //获取焦点事件  onfocus
   my$("txt").onfocus = function(){
       //判断
       if(this.value == "请输入搜索内容"){
           //清空
           this.value = "";
           this.style.color = "black";
       }
   }
   // 失去焦点事件 onblur
   my$("txt").onblur = function(){
       //判断
       if(this.value == ""){
           this.value = "请输入搜索内容";
           this.style.color = "gray";
       }
   }
  </script> 
</body>

需求:验证文本框密码长度

<input type="password" value="" id="txt">
<script src="publick.js"></script>
<script>
   //判断密码长度:我们要求密码长度是 >=6且<=10
   my$("txt").onblur = function(){
       //判断
       if(this.value.length >= 6 && this.value.length <= 10){
           this.style.backgroundColor = "pink";
       }else{
           this.style.backgroundColor = "red";
       }
   }
</script> 

需求:设置和获取文本框的值

<input type="text" value="文本框" id="txt">
<script src="publick.js"></script>
<script>
   my$("txt").onblur = function(){
       //设置文本框里的值
       this.value = "哈哈哈";
       //获取文本框的值
       console.log(this.value);
       //获取文本框类型
       console.log(this.type);
       //获取文本框id
       console.log(this.id);
   }
</script>

innerText和innerHTML的区别

<style>
    div{
        width: 300px;
        height: 200px;
        border: 1px solid #000;
    }
</style>
<body>
 <input type="button" value="按钮" id="btn">
 <div id="dv"></div>
 <div id="dvv"></div>
 <script src="publick.js"></script>
 <script>
   //点击按钮设置内容
   my$("btn").onclick = function(){
       my$("dv").innerText = "<p>我是一个段落标签</p>";
       my$("dvv").innerHTML = "<p>我是一个段落标签</p>";
   }
 </script> 
</body>
//innerText只能获取到文本内容
  innerHTML能获取到标签里的内容,还能获取标签
  不管是设置还是获取如果只想要获取纯文本,使用innerText,如果想要文本和标签用         innerHTML

需求:设置自定义标签

<style>
    ul{
        list-style: none;
        cursor: pointer;
    }
</style>
<body>
 <ul>
   <li>小明的成绩</li>
   <li>小红的成绩</li>
   <li>小黄的成绩</li>
   <li>小华的成绩</li>
   <li>小花的成绩</li>
   <li>小黑的成绩</li>
 </ul> 
<script src="publick.js"></script>
<script>
   //设置自定义属性:setAttribute("属性的名字","属性的值");
   //获取自定义属性:getAttribute("属性的名字");
   var list = document.getElementsByTagName("li");//集合、伪数组
   //循环
   for(var i = 0; i < list.length; i++){
       list[i].setAttribute("score",(i+1)*20);//设置自定义属性
       //点击每个li标签,显示对应的自定义属性
       list[i].onclick = function(){
           alert(this.getAttribute("score"));
       }
   }
</script>
</body>

需求:删除自定义属性

<style>
    div{
        width: 300px;
        height: 200px;
        background: pink;
    }
    .cls{
        background: skyblue;
    }
</style>
<body>
 <input type="button" value="移除自定义属性" id="btn">
 <div id="dv" score="10" class="cls"></div>
 <script src="publick.js"></script>
 <script>
   //移除自定义属性  removeAttribute("属性名字")
   my$("btn").onclick = function(){
       my$("dv").removeAttribute("score");//删除自定义属性
       my$("dv").removeAttribute("class");//可以删除系统自带的属性
   }
 </script> 
</body>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值