先直接上源码吧:
(function($){ $.extend({ metadata:{ //默认配置 defaults:{ type:"class", //默认是class,插件支持elem name:"metadata", cre:/({.*})/, single:'metadata' }, /* setType目前支持设置两个参数,一个type,一个name */ setType:function(type,name){ this.defaults.type = type; this.defaults.name = name; }, /* get获取对应的数据 */ get:function(elem,opts){ //合并配置 var settings = $.extend({},this.defaults,opts); //怕opts里面外部配置single为'',强制置为metadata if(!settings.single.length){ settings.single = 'metadata'; } //一上来调用$.data看有没有缓存过的数据 var data = $.data(elem,settings.single); //如果有,直接返回,不重复劳动,节省效率 if(data){ return data; } //给一个默认值"{}" data = "{}"; if(settings.type == "class"){ //默认class方式:<p id="one" class="some_class {id: 1}">p</p> //从class去读数据,用cre正则去匹配 var m = settings.cre.exec(elem.className); if(m){ data = m[1]; } }else if(settings.type = "elem"){ //elem方式:<p id="one">p<script>{id:1}</script></p> //从elem去读数据 if(!elem.getElementsByTagName){ return undefined; } //比如上面用script作为数据源,那么name就得设置script var e = elem.getElemengtsByTagName(settings.name); if(e.length){ //核心还是innerHTML data = $.trim(e[0].innerHTML); } }else if(elem.getAttribute != undefined){ //自定义属性方向,通过getAttribute来获取数据源 //<p id="one" class="some_class">p</p> //name就设置为自定义属性的key var attr = elem.getAttribute(settings.name); if(attr){ data = attr; } } //data的类型转换!!! data = eval("(" + data + ")"); //调用$.data存一下 $.data(elem,settings.single,data); //把对象化的data返回 return data; } } }); $.fn.metadata = function(opts){ return $.metadata.get(this[0],opts); }; })(jQuery);
相关推荐
jquery.metadata.js是一个支持固定格式解析的jquery插件,结合Validation插件能很好地融合到验证规则编码中~
《jQuery Metadata插件详解及其应用》 在Web开发领域,jQuery作为一个强大的JavaScript库,极大地简化了DOM操作,事件处理和Ajax交互。而jQuery Metadata插件是jQuery生态系统中的一个重要组件,它提供了一种灵活的...
metadata-extractor允许您通过简单的API访问数字图像和视频中的元数据。支持对多种类型的图片进行处理
《jQuery Metadata插件详解及其应用》 在JavaScript的世界里,jQuery库以其易用性和强大的功能深受开发者喜爱。而jQuery Metadata插件是jQuery生态系统中的一个重要组件,它允许开发者从HTML元素中提取元数据...
Maven 库提供了许多有用的依赖关系和插件,可以帮助开发者快速构建和测试Android应用程序。 在 Android Studio 中使用 Maven 库可以按照以下步骤进行: 1. 打开 build.gradle 文件:添加 Maven 库的依赖关系。 2....
赠送jar包:metadata-extractor-2.6.2.jar; 赠送原API文档:metadata-extractor-2.6.2-javadoc.jar; 赠送源代码:metadata-extractor-2.6.2-sources.jar; 赠送Maven依赖信息文件:metadata-extractor-2.6.2.pom;...
在本文中,我们将深入探讨Laravel开发中的"metadata"概念,以及如何在实际项目中运用这一功能。"metadata"在编程领域通常指的是关于数据的数据,它提供了额外的信息,帮助我们更好地理解和处理数据。在Laravel框架中...
2. **插件状态**:MyEclipse由多个插件组成,每个插件在`.metadata`中都有相应的状态记录。如果插件出现问题或冲突,可能会影响整体性能。 3. **首选项和设置**:用户的个性化设置也保存在`.metadata`中,包括编辑...
赠送jar包:metadata-extractor-2.6.2.jar; 赠送原API文档:metadata-extractor-2.6.2-javadoc.jar; 赠送源代码:metadata-extractor-2.6.2-sources.jar; 赠送Maven依赖信息文件:metadata-extractor-2.6.2.pom;...
`DatabaseMetaData` 是Java数据库连接(JDBC)API的一部分,它提供了关于数据库模式、特性以及元数据的详细信息。本篇文章将深入探讨如何利用`DatabaseMetaData`生成数据库的DLL(在关系型数据库中,DLL通常指的是...
在实际应用中,这个库可能被用于构建工具,如IDE插件、构建系统或者代码分析工具。例如,开发者可以利用它来生成API文档,检查代码的兼容性,或者在编译时执行代码分析和优化。对于那些需要深入理解Kotlin编译产物的...
这是 `.metadata` 文件夹中最重要的部分,它包含了所有安装的 MyEclipse 插件的信息。每个插件都有自己的子目录,这些目录通常以插件的唯一标识符命名。插件的配置信息、状态和数据都存储在这里。 4. **.mylyn ...
jquery.metadata.js jQuery的metadata插件吧
标题中的"jquery.metadata.1.0_javascript_jquery_"表明我们关注的是一个jQuery插件,名为jQuery Metadata。这个插件是jQuery库的一个扩展,用于解析HTML元素中的元数据(metadata)。元数据通常存储在元素的自定义...
metadata-extractor-2.4.0.rar metadata-extractor-2.4.0.rar 获取 图片 exif 信息 使用方法: File jpegFile = new File("c:\\newchangetime.jpg"); Metadata metadata = JpegMetadataReader.readMetadata(jpeg...
《jQuery.metadata.js:深入解析jQuery插件的元数据应用》 在Web开发中,jQuery库以其易用性和强大的功能深受开发者喜爱。而jQuery.metadata.js是jQuery生态中的一个重要插件,它扩展了jQuery的核心功能,允许...
赠送jar包:spring-plugin-metadata-2.0.0.RELEASE.jar; 赠送原API文档:spring-plugin-metadata-2.0.0.RELEASE-javadoc.jar; 赠送源代码:spring-plugin-metadata-2.0.0.RELEASE-sources.jar; 赠送Maven依赖信息...
"metadata-extractor-2.8.1" 是一个Java库,专门用于从各种图像和音频文件中提取元数据。这个库是由Dave Coffin创建并维护的,它支持大量的文件格式,包括JPEG、TIFF、PNG、PDF等。元数据通常包含关于文件的详细信息...
Flink 无法获取 Kafka Topic Metadata 异常及解决 一、问题现象 在使用 Kafka 0.11.0.1 和 Flink 1.4 进行实时计算时,Flink 无法获取 Kafka Topic Metadata,报以下异常:org.apache.kafka.common.errors....
This standard specifies static High Dynamic Range (HDR) metadata extensions using an additional InfoFrame and EDID CTA data block, replacing previously reserved codes in Table 5 and Table 46 of CTA-...