zoukankan      html  css  js  c++  java
  • HTML中data自定义属性的使用和插件应用

    大家可能会经常看到一些HTML里都带有data属性,这些都是HTML5的自定义属性,可以做很多事情,直接调用JS十分方便,虽然是HTML5的属性,但好在jQuery通用的,所以基本在所有浏览器里都是可以正常使用的,包括低版本的IE。下面为大家简单介绍一下使用方法:

    1、简单使用
    <div id="widget" data-text="123456"></div> 
    $(function(){
        var _widget= $("#widget").attr("data-text"); 
      alert(_widget);
    //因为data-text="123456",所以打印出123456 })

    2、配合$.fn.extend使用,编写插件

    <div id="widget" data-widget-config="{effect:'click'}">这里是测试区域</div> 
    //插件扩展部分
    ;(function($){ $.fn.extend({ Test:function(config){ /** * @param effect 效果 * config||{} 参数可以缺省的 */ // 设置默认值 config=$.extend({ effect:'click', },config||{}); var effect=config.effect; var _text=config._text; if(effect=='click'){ $(this).click(function(){ alert('this click'); }) }else if(effect=='mouseover'){ $(this).mouseover(function(){ alert("this is mouseover"); }) } } }) })(jQuery)
    //调用部分,HTML中的data属性依赖于此
    $(function(){
        var _widget= $("#widget").attr("data-widget-config"); 
        // 将string转换成json对象的方法,有两种
        var widgetConfigJSON=eval("("+_widget+")");
         // var widgetConfigJSON = (new Function("return " + _widget))();
        $("#widget").Test(widgetConfigJSON);
      //因为HTML中data属性是
    data-widget-config="{effect:'click'}",所以这里会调用点击事件,
      如果是data-widget-config="{effect:'mouseover'}",则调用鼠标移上去的事件
    })
  • 相关阅读:
    JAVA中的BIO,NIO,AIO
    JAVA通过信号量避免死锁
    java死锁
    ConcurrentHashMap并不是完全的线程安全
    【技术学习】Understand Exit Codes of Docker
    【技术学习】centos7 firewall
    【现场问题】Linux Cache过大问题排查
    【技术学习】postgresql学习笔记--基础篇
    【技术学习】postgresql学习笔记--基础篇
    【监控脚本】利用selenium自动化测试样例一
  • 原文地址:https://www.cnblogs.com/Qzhou/p/3053870.html
Copyright © 2011-2022 走看看