xiyueta.js库的.text()方法使用

xiyueta().text()方法描述:获取匹配元素集合中每个元素的组合文本内容,包括其后代,或设置匹配元素的文本内容。

xiyueta.text()方法 共有二种调用方法:
1、xiyueta("div").text(); //获取匹配元素集合中每个元素的组合文本内容(包括它们的后代)
2、xiyueta("div").text("设置内容"); //设置每个匹配元素的HTML内容
总结:.text()用法与jQuery中.text()用法保持一致,.text(function(i){})可以向jQuery里这样来使用
see .text() | https://api.jquery.com/text
尝试一下>>http://www.xiyueta.com/demo/xiyueta/text/

xiyueta.js库的.text()方法调用源码部分:

     text: function(value) { //获取匹配元素集合中每个元素的组合文本内容,包括它们的后代==jQuery
         if (arguments.length >= 1) { //设置
             _xyt.text(this.domList, value);
             return this;
         } else {
             return _xyt.text(this.domList);
         }
     }

 


xiyueta.js库的.text()方法函数源码部分:

     //获得或设置文本 domList为操作dom 改进于20210929  抛弃查找this.getDocument(lableName, x, y);
     this.text = function(domList, value) {
         var valueType = typeof(value);
         if (valueType == "function") { //设置值为函数
             var splstr = this.callToList(this.domList, value);
             for (var i = 0; i <= splstr.length - 1; i++) {
                 var obj = splstr[i];
                 if (obj) this.text(obj.domList, obj.value)
             }
             return false;
         }

         if (domList == undefined) return ""; //dom为undefined退出

         var type = "get"; //获得
         if (arguments.length >= 2) {
             type = "set"; //设置
             //不为这处判断,直接转字符串就行
             // valueType == "number" || valueType == "object" || valueType == "date" || valueType == "boolean" || valueType == 'array'
             if (valueType == 'undefined') {
                 return ""; //为undefined不要符值,退出
             } else if (valueType == 'null') {
                 value = "";                 
             }else{
                value = value + "";
             }

             value = value.replace(/</g, '&lt;').replace(/>/g, '&gt;'); //转义字符
         }

         //操作对象 追加20210505   不要删除,内部调用时可以这么写20210929
         if (typeof(domList) == "object") {
             domList = "," + domList.x + "|" + domList.y;
         }
         if (domList == "") return ""; //domlist列表为空时返回空字符串并退出

         var c = ""; //获得内容
         var splstr = domList.split(",");
         for (var i = 1; i <= splstr.length - 1; i++) {
             var s = splstr[i];
             if (s.indexOf("|") != -1) { //双标签 只处理双标签 
                 var splxx = s.split("|");
                 var x = parseInt(splxx[0]);
                 var y = parseInt(splxx[1]);
                 for (var j = x; j <= y; j++) {
                     var obj = this.htmlArr[j];
                     if (obj) { //对象存在
                         if (j == x) { //开始位置
                             if (type == 'get') c += obj.downHtml;
                         } else if (j < y) { //在双标签中间
                             if (type == "set") {
                                 delete this.htmlArr[j]; //删除数组
                             } else {
                                 c += obj.upHtml + obj.downHtml;
                             }
                         } else if (j == y) { //结束位置
                             if (type == 'get') {
                                 c += obj.upHtml;
                             } else {
                                 obj.upHtml = value; //替换内容部分
                             }
                         }
                     }
                 }
             }
         }
         if (type == 'get') return c;
     }

 

————————————————

xiyeuta.js库网址:https://xiyueta.js.org/
原创不易,若转载请注明出处,感谢大家~ http://www.xiyueta.com/doc/
喜欢我的可以点赞、关注、收藏,如果有什么技术上的疑问,欢迎留言或私信~

 

上一篇:静态工厂方法对比构造器


下一篇:C#中winform使用相对路径读取文件的方法