Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 国产高清在线观看视频,日本爽爽爽爽爽爽免费,韩国美女丝袜一区二区

          整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          微信小程序常用的三種解析html方法,你了解多少

          言:在實(shí)際開發(fā)項(xiàng)目中遇到在微信小程序里需要顯示新聞內(nèi)容,新聞內(nèi)容是通過接口讀取的服務(wù)器中的富文本內(nèi)容,是html格式的,小程序默認(rèn)是不支持html格式的內(nèi)容顯示的,那我們需要顯示html內(nèi)容的時(shí)候,就可以通過以下三種方式來進(jìn)行數(shù)據(jù)渲染。

          第一種:通過小程序自帶的標(biāo)簽進(jìn)行 rich-text 數(shù)據(jù)渲染

          文檔地址:https://developers.weixin.qq.com/miniprogram/dev/component/rich-text.html

          使用方法:

          1、在page.js中將從接口中獲取的值傳給content

          Page({
            data: {
              content:''
            },
            onLoad: function () {
              var that = this;
              wx.request({
                  url: '', 
                  method: 'POST',
                  data: {
                      'id':15
                  },
                  header: {
                      'content-type': 'application/json'
                  },
                  success: function(res) {
                      var content = res.data['content'];//對應(yīng)富文本編輯器的內(nèi)容
                      that.setData({
                      	content:content
                      })
                  }
              })
            }
          })

          2、在page.wxml中進(jìn)行數(shù)據(jù)輸出

          <rich-text nodes="{{content}}" bindtap="tap"></rich-text>

          第二種:使用插件wxParse來解析html


          使用方法:

          1、插件下載地址:https://github.com/icindy/wxParse

          2、將下載后的文件夾放到小程序項(xiàng)目的根目錄

          3、在需要加載html內(nèi)容的頁面對應(yīng)的js文件里引入wxParse

          var WxParse = require('../../wxParse/wxParse.js');

          4、通過調(diào)用WxParse.wxParse方法來設(shè)置html內(nèi)容

          /**
          * WxParse.wxParse(bindName , type, data, target,imagePadding)
          * 1.bindName綁定的數(shù)據(jù)名(必填)
          * 2.type可以為html或者md(必填)
          * 3.data為傳入的具體數(shù)據(jù)(必填)
          * 4.target為Page對象,一般為this(必填)
          * 5.imagePadding為當(dāng)圖片自適應(yīng)是左右的單一padding(默認(rèn)為0,可選)
          */
          Page({
            data: {
            },
            onLoad: function () {
              var that = this;
              wx.request({
                  url: '', 
                  method: 'POST',
                  data: {
                      'id':15
                  },
                  header: {
                      'content-type': 'application/json'
                  },
                  success: function(res) {
                      var article = res.data['content'];
                      WxParse.wxParse('article', 'html', article, that,5);
                  }
              })
            }
          })

          5、在頁面中引用模板

          <!--放在底部-->
          <import src="../../wxParse/wxParse.wxml"/>
            
           <!--放在數(shù)據(jù)需要渲染的地方-->
          <view class="wxParse">
            <template is="wxParse" data="{{wxParseData:article.nodes}}"/>
           </view> 

          6、這樣就配置完了,具體的樣式是可以通過css去自定義調(diào)整的

          第三種,通過webview來加載外部網(wǎng)頁

          如果說直接使用文章詳情頁面,強(qiáng)烈建議直接加載外部網(wǎng)頁,這樣使用起來是去合理化的。

          文檔地址:https://developers.weixin.qq.com/miniprogram/dev/component/web-view.html


          使用方法:

          1、在所需頁面加載web-view標(biāo)簽,傳入外部訪問的路徑就可以了

          <web-view bindload="finish" src="http://www.baidu.com"></web-view>

          需要注意的是個(gè)人版的微信小程序沒有這個(gè)功能,企業(yè)版的需要在控制臺(tái)中先配置相關(guān)的業(yè)務(wù)域名。

          總結(jié)

          以上就是小程序開發(fā)過程中對富文本編輯器中html渲染的三種常用方法。

          我是小程序軟件開發(fā),每天分享開發(fā)過程中遇到的知識(shí)點(diǎn),如果對你有幫助的話,幫忙點(diǎn)個(gè)贊再走唄,非常感謝。

          《完》

          往期文章分享:

          php常用的富文本編輯器,ueditor和kindeditor

          tmlParse 是一款基于windwos平臺(tái)的HTML文檔解析工具,可快速構(gòu)建DOM樹,從而輕松實(shí)現(xiàn)網(wǎng)頁元素的爬取工作。DOM樹就是一個(gè)HTML文檔的節(jié)點(diǎn)樹,每個(gè)節(jié)點(diǎn)由:標(biāo)簽(Tag)、屬性(Attribute)、文本(Text)三個(gè)值來描述。

          所謂的HTML文檔解析,指的就是如何構(gòu)建一顆DOM樹,只有成功構(gòu)建出DOM樹,才有可能進(jìn)行后續(xù)的數(shù)據(jù)爬取和分析工作。顯然,構(gòu)建DOM樹是比較復(fù)雜的過程,因?yàn)椴皇敲恳粋€(gè)HTML文檔都會(huì)嚴(yán)格按照規(guī)范來書寫,因此解析過程需要具有一定容錯(cuò)能力。此外,解析效率也是一個(gè)需要考慮的因素,也就是說最好通過一次文檔掃描即可建立起DOM樹,而不是反復(fù)掃描。

          下面是HtmlParse介紹。

          工具特點(diǎn)

          1、綠色純天然,無任何第三方依賴庫,文件大小不到150K; 2、解析速度快,具有一定的HTML語法容錯(cuò)能力,可快速將HMTL文檔解析為DOM樹; 3、基于命令行參數(shù),可通過不同參數(shù)獲取指定TAG的屬性值和文本內(nèi)容,從而實(shí)現(xiàn)網(wǎng)頁爬取功能; 4、可將爬取數(shù)據(jù)輸出為json格式,方便第三方程序進(jìn)一步分析和使用; 5、可爬取script腳本到指定的js文件中;

          下載地址:http://softlee.cn/HtmlParse.zip

          使用方法

          HtmlParse HtmlPathFile -tag TagName [-attr] [Attribute] [-o] [JsonPathFile]

          解析指定的HTML文檔,并將文檔中指定的標(biāo)簽及屬性輸出到指定文件中。

          HtmlPathFile:必選參數(shù),要解析的HTML文檔路徑名,如果文件路徑中有空格,可使用雙引號將文件路徑包含;

          -tag:必選參數(shù),用于指定要抓取的HTML標(biāo)簽名稱; -attr:可選參數(shù),用于指定標(biāo)簽的屬性值,如果不指定,則返回該標(biāo)簽的所有屬性值; -o:可選參數(shù),用于指定抓取內(nèi)容輸出的文件,可將抓取的內(nèi)容保存為json格式的文件。 如果該參數(shù)不指定,則進(jìn)行控制臺(tái)輸出。 如果抓取的是script、style則會(huì)保存為js格式文件。

          如果要抓取doctype,可使用-tag doctype,將整個(gè)doctype內(nèi)容獲取。此時(shí)將會(huì)忽略-attr指定的任何屬性值。

          舉例說明

          1、爬取網(wǎng)頁中所有超鏈接

          HtmlParse c:/sina.html -tag a -attr href -o c:/sina.json

          解析C盤下的sina.html文檔,并提取該文檔中的所有超鏈接到sina.json文件中。其中**-tag a -attr href,用于指定獲取超鏈接標(biāo)簽ahref**屬性。

          2、爬取網(wǎng)頁中所有圖片鏈接

          HtmlParse c:/sina.html -tag img -attr src -o c:/sina.json

          解析C盤下的sina.html文檔,并提取該文檔中的所有圖片鏈接到sina.json文件中。

          3、爬取網(wǎng)頁中所有腳本

          HtmlParse c:/sina.html -tag script -o c:/sina.js

          解析C盤下的sina.html文檔,并提取該文檔中的所有腳本函數(shù)到sina.js文件中。

          輸出內(nèi)容

          如果通過-o參數(shù)指定輸出文件,則會(huì)生成一個(gè)json格式的文檔。 TagName為爬取的標(biāo)簽名稱,比如超鏈接的a,其值是一個(gè)json數(shù)組,數(shù)組中的每個(gè)內(nèi)容為Json對象,每個(gè)Json對象,有屬性和文本構(gòu)成。如果-attr 指定了要爬取的屬性,則AttrName為指定的屬性名稱,比如href或src。text為該標(biāo)簽的文本內(nèi)容,有些標(biāo)簽不存在文本內(nèi)容,比如img、meta等,則該值為空。json格式如下:

          {
            "TagName":
            {
               {"AttrName":"AttrValue1", "text":"text1"}
               {"AttrName":"AttrValue1", "text":"text2"}
            }
          }

          下面是一個(gè)sina網(wǎng)頁的所有超鏈接json

          {
           "a": [{
            "href": "javascript:;",
            "text": "設(shè)為首頁"
           }, {
            "href": "javascript:;",
            "text": "我的菜單"
           }, {
            "href": "https://sina.cn/",
            "text": "手機(jī)新浪網(wǎng)"
           }, {
            "href": "",
            "text": "移動(dòng)客戶端"
           }, {
            "href": "https://c.weibo.cn/client/guide/download",
            "text": "新浪微博"
           }, {
            "href": "https://so.sina.cn/palmnews/web-sinanews-app-download.d.html",
            "text": "新浪新聞"
           }, {
            "href": "https://finance.sina.com.cn/mobile/comfinanceweb.shtml",
            "text": "新浪財(cái)經(jīng)"
           }, {
            "href": "https://m.sina.com.cn/m/sinasports.shtml",
            "text": "新浪體育"
           }, {
            "href": "https://tousu.sina.com.cn/about_app/index?frompage=heimaopc",
            "text": "黑貓投訴"
           }, {
            "href": "http://blog.sina.com.cn/lm/z/app/",
            "text": "新浪博客"
           }, {
            "href": "https://games.sina.com.cn/o/kb/12392.shtml",
            "text": "新浪游戲"
           }, {
            "href": "https://zhongce.sina.com.cn/about/app",
            "text": "新浪眾測"
           }, {
            "href": "https://mail.sina.com.cn/client/mobile/index.php?suda-key=mail_app&suda-value=login",
            "text": "新浪郵箱客戶端"
           }, {
            "href": "javascript:;",
            "text": "關(guān)閉置頂"
           }, {

          來源:https://www.cnblogs.com/softlee/p/16374079.html

          多數(shù)PHP程序都使用HTML表單從用戶那里獲取數(shù)據(jù)并計(jì)算結(jié)果。

          HTML表單的一些基本原則

          • 選擇適合于收集的數(shù)據(jù)類型和提供交互方式的控件。
          • 清楚標(biāo)記每一個(gè)控件,這樣用戶就可以理解其功能。
          • 盡可能將標(biāo)簽對齊。將控件的左邊緣對齊。
          • 將相關(guān)的標(biāo)簽分組,并且通過設(shè)計(jì)中使用空白將每一個(gè)分組分開。
          • 表單上的控件順序應(yīng)該類似于用戶操作他們的順序。

          創(chuàng)建基本HTML表單

          首先創(chuàng)造一個(gè)基本的HTML大綱,包含表單控件;然后將控件進(jìn)行合并(HTML表單必須包括一個(gè)提交按鈕,用戶單擊它可以將表單數(shù)據(jù)發(fā)送到服務(wù)器。)一個(gè)單獨(dú)的HTML頁面可以包含多個(gè)表單。

          • 創(chuàng)建HTML結(jié)構(gòu)

          包含表單的HTML結(jié)構(gòu)和和普通的HTML結(jié)構(gòu)一樣。

          <HTML>
            <HEAD>
            <TITLE>標(biāo)題放在這</TITLE>
            </HEAD>
          <BODY>
            表單頁面放在這
            </BODY>
            </HTML>

          在包含表單的HTML頁面中可以使用任何HTML標(biāo)簽。基本的表單使用FROM標(biāo)簽來說明。該標(biāo)簽中METHOD屬性接收GET或POST兩個(gè)值中的一個(gè)。ACTION屬性子明PHP腳本的url,該腳本可以收集通過表單收集的數(shù)據(jù),可以是絕對路徑或者相對路徑

          <FORM METHOD="method" ACTION="url"> 
            中間可以放置表單控件
            </FORM>
          • 合并控件

          兩個(gè)常用的基本控件:文本框和提交按鈕。

          文本框:允許用戶鍵入信息以發(fā)送給PHP腳本。NAME屬性為文本提供名稱,PHP腳本可以通過名稱準(zhǔn)確訪問其內(nèi)容,因此它應(yīng)該是唯一的且符合PHP變量命名規(guī)則(但不需要$符號),單標(biāo)簽。VALUE屬性指明出現(xiàn)在提交按鈕上面的標(biāo)題。創(chuàng)建方式如下:

          <INPUT TYPE = "TEXT" NAME="text">

          提交按鈕:允許用戶將一個(gè)表單的內(nèi)容發(fā)送到服務(wù)器,一個(gè)HTML表單對應(yīng)應(yīng)該有一個(gè)提交按鈕。

          示例:一個(gè)完整的HTML表單。

          <HTML>
            <HEAD>
            <TITLE>標(biāo)題</TITLE>
            </HEAD>
          <BODY>
          <FORM METHOD="POST" ACTION="phpinfo.php">
          <INPUT TYPE="TEXT" NAME="user_name">
          <BR/>
          <BR/>
          <INPUT TYPE="TEXT" NAME="user_email">
          <BR/>
          <BR/>
          <INPUT TYPE="SUBMIT" VALUE="Send the Data">
          </FORM>
            </BODY>
            </HTML>


          • 使用多個(gè)表單

          可以在一個(gè)HTML頁面中包含多個(gè)表單,注意下一個(gè)表單的FORM開始之前需要結(jié)束前一個(gè)FORM表單。

          <HTML>
            <HEAD>
            <TITLE>標(biāo)題</TITLE>
            </HEAD>
          <BODY>
            
          <FORM METHOD="POST" ACTION="phpinfo.php">
          <INPUT TYPE="TEXT" NAME="user_name">
          <BR/>
          <BR/>
          <INPUT TYPE="TEXT" NAME="user_email">
          <BR/>
          <BR/>
          <INPUT TYPE="SUBMIT" VALUE="Send the Data">
          <BR/>
          <BR/>
          </FORM>
          
          <FORM METHOD="POST" NAME="phpinfo.php">
          <INPUT TYPE="TEXT" NAME="user_name1">
          <BR/>
          <BR/>
          <INPUT TYPE="TEXT" NAME="user_email1">
          <BR/>
          <BR/>
          <INPUT TYPE="SUBMIT" VALUE="Send the Data1">
          </FORM>
          
            </BODY>
            </HTML>


          創(chuàng)建表單控件

          • 創(chuàng)建自定義的文本框

          文本框的屬性中,TYPE和NAME是必須的,其余是可選屬性。SIZE屬性用于設(shè)置文本框的可視大小;MAXLENGTH指明用戶鍵入字符的最大長度;VALUE給出了一個(gè)最初顯示在文本框中的值。

          <input type="text" name="" size="" maxlength="" value="">
          • 創(chuàng)建文本區(qū)域

          文本區(qū)域可以輸入多行文本。NAME和ROWS屬性是必須的。ROWS屬性表明了文本區(qū)域內(nèi)可以看到的文本行數(shù),充滿時(shí)會(huì)滾動(dòng)。COLS屬性指明可見文本列數(shù)與行數(shù)類似。WRAP屬性指明文本區(qū)域內(nèi)單詞換行的方式,可以指定如下值。該標(biāo)簽為雙標(biāo)簽。

          說明

          off

          禁止單詞換行但用戶可以輸入換行符強(qiáng)制換行

          virtual/soft

          各行顯示為換行,但是換行并沒有被發(fā)送到服務(wù)器

          physica/hard

          啟用了單詞換行

          <inputarea name="" rows="" cols="" wrap="">
          • 創(chuàng)建密碼框

          創(chuàng)建密碼框的語法與文本框相同,但要將TYPE屬性指定為PASSWORD而不是TYPE。

          <input type="password" name="" size="" maxlength="" value="">
          • 創(chuàng)建復(fù)選框

          取兩個(gè)值中的一個(gè),即二選一。TYPE屬性是必須的,checked屬性出現(xiàn),該復(fù)選框默認(rèn)情況會(huì)被選定。value屬性指定復(fù)選框被選定情況下被發(fā)送到服務(wù)器的值,默認(rèn)發(fā)送on值。法如下:

          <input type="checkbox" name="" checked value="">
          • 創(chuàng)建單選按鈕

          語法與復(fù)選框?qū)傩院x相同,但是TYPE屬性的值必須是RADIO,NAME屬性是必須的。

          <input type="radio" name="" checked value="">
          • 創(chuàng)建列表框

          用戶可以選擇一個(gè)或者多個(gè)選項(xiàng),它是一個(gè)滾動(dòng)菜單。

          <select name="" multipile size="">options go here</select>

          name屬性是必須的,multipile屬性指明用戶可以通過按下crtl鍵并單擊多個(gè)選項(xiàng)來選擇它們

          列表框的單選行為可作為單選按鈕。

          <option selected value="text"></options>
          • 創(chuàng)建隱藏域
          <input type="hidden" name="text"value="">
          • 實(shí)現(xiàn)上傳文件的HTML表單
          <input type="FILE" name="name" accept="time" value="text">

          其中type屬性是必須的。格式通過使用MIME碼指定。常用的格式如下:


          超文本標(biāo)記語言文本 .html,.html text/html

            普通文本 :txt text/plain

            word文檔:application/msword

            RTF文本 :rtf application/rtf

            GIF圖形 :gif image/gif

            JPEG圖形 :jpeg,

            jpg: image/jpeg

            au聲音文件:au audio/basic

            MIDI音樂文件 :mid,.midi audio/midi,audio/x-midi

            RealAudio音樂文件 .ra, .ram audio/x-pn-realaudio

            MPEG文件 .mpg,.mpeg video/mpeg

            AVI文件 .avi video/x-msvideo

            GZIP文件 .gz application/x-gzip

            壓縮文件.rar application/octet-stream

            壓縮文件.zip application/x-zip-compressed

            TAR文件 .tar application/x-tar


          更多提交表單的信息

          • 使用圖像提交數(shù)據(jù)
          <input type="image" src="url" name="text" align="align">
          • 創(chuàng)建重置按鈕
          <input type="reset" value="text">

          主站蜘蛛池模板: 欧美日韩精品一区二区在线视频| 久久久99精品一区二区| 最新中文字幕一区| 91一区二区三区四区五区 | 日韩av片无码一区二区不卡电影| 日本在线视频一区二区| 国产欧美一区二区精品仙草咪| 国产成人久久一区二区三区| 亚洲性日韩精品国产一区二区| 亚洲日韩国产精品第一页一区| 无码人妻AⅤ一区二区三区| 亚洲日本va一区二区三区 | 国产亚洲一区二区在线观看| 无码人妻AV免费一区二区三区| 国产av一区最新精品| 国产精品一区二区三区99| 无码一区二区三区视频| 国模视频一区二区| 精品一区二区三区四区在线| 久久精品黄AA片一区二区三区| 日韩一区二区在线免费观看| 久久精品一区二区三区不卡| 亚洲熟妇成人精品一区| 亚洲色婷婷一区二区三区| 无码人妻一区二区三区免费手机 | 久久国产精品一区二区| 在线欧美精品一区二区三区| 中文字幕在线一区二区三区| 91视频一区二区三区| 精品人妻少妇一区二区三区| 中文字幕精品一区二区2021年 | 无码国产精品一区二区免费式直播| 国产第一区二区三区在线观看| 成人日韩熟女高清视频一区| 在线视频精品一区| 在线视频一区二区| 久久免费视频一区| 国产精品一区不卡| 亚洲综合一区二区三区四区五区 | 精品国产福利一区二区| 亚洲一区二区三区在线视频|