最近做富文本编辑器调研的时候看到xheditor的源码的时候觉得有点东西简单地说说。
第一个:我们判断this对象是否是textarea
/* 截取部分 */ $.fn.xheditor = function(options){ this.each(function(){ //解释一下吧 //第一你可能用jQuery用到现在第一次见nodeName这个api //确实在一些api的chm里面是没有这个api的介绍的 //不过不要担心我下面会介绍这个api //其实就是判断当前绑定的对象是否是textarea if(!$.nodeName(this,'TEXTAREA')){ return; } }); }
看到这里,如果你以前写过或者看过类似textarea自适应的相关插件或者有点基础的人,你会觉得是不是这样就可以了
/* 截取部分 */ $.fn.xheditor = function(options){ this.each(function(){ //直接读type属性 if(this.type !== 'textarea'){ return; } }); }
好。我们来看看$.nodeName这个api吧。
ps:如果我面试的话,谁要告诉我他用了好几年jQuery而且通读源码的话,但是连$.nodeName多不知道,我是觉得NO ok的。
/* nodeName @param elem ------elem对象 @param name -----指定匹配的nodeName */ nodeName : function(elem,name){ //elem存在nodeName的属性而且转换大写后指定的name是一致的 return elem.nodeName && elem.nodeName.toUpperCase() === name.toUpperCase(); }
或者你现在还不知道什么事nodeName或者nodeType或者nodeValue.不要紧,不知道我一一给你道来。
1. nodeType ------返回节点的类型。
简单地举出常见的:
元素 | 1 |
属性 | 2 |
文本 | 3 |
注释 | 8 |
文档 | 9 |
2. nodeName ---返回某个节点的名称。
- 元素节点的nodeName是标签名称
- 属性节点的nodeName是属性名称
- 文本节点的nodeName永远是 #text
- 文档节点的nodeName永远是 #document
注释: nodeName所包含的XML元素的标签名称永远是大写。
3. nodeValue
- 文本节点,nodeValue属性包含文本
- 属性节点,nodeValue属性包含属性值
- 对文档节点和元素节点不可用
相关推荐
o instanceof Node : o && typeof o === "object" && typeof o.nodeType === "number" && typeof o.nodeName === "string"); } $.print = $.fn.print = function () { // Print a given set of elements var ...
TO NODE (nodename1, nodename2); ``` - **HASH**: 按照指定列的哈希值进行数据分布。 - **MODULO**: 按照指定列的取模结果进行数据分布。 - **ROUNDROBIN**: 按照轮询方式进行数据分布。 - **REPLICATION**: 复制...
"information-source-for-the-host.rar_The Information_主机基本信息"这个压缩包文件提供了获取这些信息的源码,帮助开发者或系统管理员了解主机的硬件和操作系统状态。下面我们将详细探讨其中涉及的关键知识点。 ...
jquery需要的所有js文件 /*! * jQuery UI 1.8.18 * * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) * Dual licensed under the MIT or GPL Version 2 licenses. * http://jquery.org/license * ...
2. **创建节点**:`createNode(String nodeName, String nodeContent)` - 创建具有指定名称和内容的新节点。 3. **添加节点**:`appendNode(Node parentNode, Node newNode)` - 将新节点添加到父节点的子节点列表中...
Nodename: localhos Release: HP-UX B.11.31 Machine: ia64 -------------------------- CPU info: 2 Intel(R) Itanium 2 9100 series processors (1.59 GHz, 18 MB) 532 MT/s bus, CPU version A1 4 logical ...
Nodename: localhos Release: HP-UX B.11.31 Machine: ia64 -------------------------- CPU info: 2 Intel(R) Itanium 2 9100 series processors (1.59 GHz, 18 MB) 532 MT/s bus, CPU version A1 4 logical ...
Pod是Kubernetes中的基本部署单位,而Pod的生命周期管理是指一系列操作,这些操作确保Pod从创建到终止的整个过程按照预期运行。Kubernetes提供了声明式的API来管理Pod的生命周期,以便用户能够控制应用程序的部署和...
nodeName 选取此节点的所有子节点 / 从当前节点选择直接子节点 // 从当前节点选择子孙节点 . 当前节点 .. 选取当前节点的父节点 @ 获取属性 高级用法说明 选择特定...
- 在etc/config/system配置文件中可以设置主机名,而sys.lua源码文件中定义了hostname函数,该函数读取系统的nodename,即设备的名称。 2. **系统负载的获取和显示**: - 系统的负载平均值(load1、load5、load15...
每个节点都有特定的属性,如nodeType表示节点类型(1代表元素节点,2代表属性节点,3代表文本节点),nodeName是节点名称,nodeValue则为节点的值。 对于节点的操作,主要涉及以下几个方面: 1. **节点层级**:...
根据提供的文件信息,我们可以整理出一系列与C#编程语言相关的知识点。这些知识点主要涉及日期时间操作、字符串处理、数据类型转换、XML文档操作以及其他一些实用的功能。下面是详细的知识点总结: ### 一、日期...
G.el.nodeName:"INPUT";if(_||G.eCont||new RegExp(/input|textarea|div|span|p|a/ig).test(D))G.elProp=D=="INPUT"?"value":"innerHTML";else return;if(G.lang=="auto")G.lang=S?navigator.browserLanguage....
2. XML DOM的节点信息不包括**C、nodeValueName**,正确的应该是`nodeName`和`nodeValue`。 3. 正确加载XML文档的语句是**A、xmlDoc.load("books.xml");**。 4. `x.setAttribute("category","child")`中,"category...
在IT领域,源码软件指的是可以查看和修改的原始编程代码,这与封闭源码的商业软件形成对比。"获取计算机名"这个主题涉及到的是操作系统编程中的一个常见任务,即如何通过程序来获取运行该程序的计算机的名称。在...
- `srvctl stop nodeapps -n nodename` **步骤二:删除 CRS 自动启动程序** 此步骤包括删除与 CRS 相关的系统启动脚本和服务文件。 - **Linux:** - `rm /etc/oracle/*` - `rm -f /etc/init.d/init.cssd` - `...
例如,如果你有一个jQuery对象 `$element`,你可以这样获取父元素、子元素和兄弟元素: ```javascript var $element = $('#test'); var $parent = $element.parent(); // 父元素 var $children = $element....
每个节点都有相应的属性,如`nodeName`、`nodeValue`、`nodeType`和`nodeTypeString`。 - `nodeName`:返回节点的名称,例如元素节点的标签名。 - `nodeValue`:返回或设置节点的值,对于元素节点,通常为空;...
namespaces -o=custom-columns=NAME:.metadata.name,NAMESPACE:.metadata.namespace,NODE:.spec.nodeName --sort-by=.spec.nodeName常问问题failed to create sandbox意味着kubelet无法启动暂停容器,或者CNI开始...
jquery获取XML节点名称的几种方法以: • get(0).tagName $(this).get(0).tagName • [0].tagName[0] $(this)[0].tagName • context.nodeName $(this).context.nodeName function getXMLData(){ $.ajax({ url:'...