摘要:實(shí)現(xiàn)打印的方式方式一會(huì)彈出打印對(duì)話框,打印的是中的內(nèi)容,下面是從網(wǎng)上摘到的一個(gè)局部打印的例子,該例子的不足是打印會(huì)修改頁(yè)面的內(nèi)容。
目前正在做瀏覽器端采用js方式實(shí)現(xiàn)打印這么一個(gè)功能,JS打印實(shí)現(xiàn)的方法很多,但是兼容各個(gè)瀏覽器實(shí)現(xiàn)打印預(yù)覽的功能有些棘手,現(xiàn)將實(shí)現(xiàn)的內(nèi)容及遇到的問題記錄下來,希望有大??吹剿岬膯栴}后可以給予解答,在此感謝啦。
1.JS實(shí)現(xiàn)打印的方式方式一:window.print()
window.print();會(huì)彈出打印對(duì)話框,打印的是window.document.body.innerHTML中的內(nèi)容,下面是從網(wǎng)上摘到的一個(gè)局部打印的例子,該例子的不足是打印會(huì)修改頁(yè)面的內(nèi)容。
局部打印案例 1不需要打印的地方
2這里不要打印啊
打印標(biāo)題
打印內(nèi)容~~
不打印的地方啊哈哈哈哈
2
方式二:使用html 標(biāo)簽
這種方式是其只兼容IE,其他瀏覽器不可使用,同時(shí)IE10以下的瀏覽器才可以使用,調(diào)用方式如下:
這種方式優(yōu)勢(shì)是在IE下可以彈出打印預(yù)覽,這是打印很人性化的功能,但是遺憾的是高版本的IE瀏覽器不支持WebBrowser了
方式三:采用document.execCommand(”print”)
該方式也兼容各個(gè)版本的瀏覽器,同window.print()一樣,其啟動(dòng)的是打印對(duì)話框,chrome的打印對(duì)話框自帶預(yù)覽功能,但是IE、火狐僅僅只彈出打印設(shè)置對(duì)話框,沒有預(yù)覽功能。
方式四:采用JQuery插件
使用jQuery瀏覽插件可以很方便的進(jìn)行局部打印,常用的插件有:
1)jquery.print.js 下載地址:https://github.com/DoersGuild...
2)jquery.print-preview.js 下載地址:https://github.com/etimbo/jqu...
這兩種方式使用都很簡(jiǎn)單,1)通過$("#id").print(/*options*/);調(diào)用;2)通過$("#id").printArea(/options/); 其中的option可選項(xiàng)可以在下載地址下載下來后看示例代碼,一般options不用傳即可,示例代碼如下:
JQuery打印
方式五:采用瀏覽器打印第三方插件
該方式需要用戶瀏覽器安裝相關(guān)的第三方插件,用戶體驗(yàn)不好,故在此不細(xì)述了。
2.打印預(yù)覽chrome瀏覽器、win10自帶的IE瀏覽器 調(diào)用打印彈出的打印設(shè)置界面中包含打印預(yù)覽部分,故其通過上面的打印函數(shù)的調(diào)用即可實(shí)現(xiàn)。
IE9以后的版本、火狐不支持webbrowser控件了,JS調(diào)用不了瀏覽器的打印預(yù)覽的功能,我們只能用iframe模擬打印預(yù)覽的對(duì)話框,將需要打印的內(nèi)容顯示在該對(duì)話框中,然后在調(diào)用打印的功能實(shí)現(xiàn)打印。
1)jquery打印預(yù)覽插件
jquery.print-preview.js 下載地址:https://github.com/etimbo/jqu...
其實(shí)現(xiàn)的效果如下圖(其自動(dòng)的示例代碼)
2)webbrowser控件打印預(yù)覽
IE8及以下版本可以調(diào)用WebBrowser.ExecWB(7,1) 函數(shù)彈出瀏覽器的打印預(yù)覽對(duì)話框,采用該函數(shù)的好處是 用戶可以在打印預(yù)覽對(duì)話框中 調(diào)整頁(yè)邊距、頁(yè)眉、頁(yè)腳;
下面貼出的是設(shè)置頁(yè)邊距、頁(yè)眉、頁(yè)腳的JS代碼
//取得頁(yè)面打印設(shè)置的原參數(shù)數(shù)據(jù) function PageSetup_temp(){ try { var Wsh=new ActiveXObject("WScript.Shell"); HKEY_Key="header"; //取得頁(yè)眉默認(rèn)值 head = Wsh.RegRead(HKEY_Root+HKEY_Path+HKEY_Key); HKEY_Key="footer"; //取得頁(yè)腳默認(rèn)值 foot = Wsh.RegRead(HKEY_Root+HKEY_Path+HKEY_Key); HKEY_Key="margin_bottom"; //取得下頁(yè)邊距 bottom = Wsh.RegRead(HKEY_Root+HKEY_Path+HKEY_Key); HKEY_Key="margin_left"; //取得左頁(yè)邊距 left = Wsh.RegRead(HKEY_Root+HKEY_Path+HKEY_Key); HKEY_Key="margin_right"; //取得右頁(yè)邊距 right = Wsh.RegRead(HKEY_Root+HKEY_Path+HKEY_Key); HKEY_Key="margin_top"; //取得上頁(yè)邊距 top = Wsh.RegRead(HKEY_Root+HKEY_Path+HKEY_Key); } catch(e){ //alert("不允許ActiveX控件"); } } //設(shè)置網(wǎng)頁(yè)打印的頁(yè)眉頁(yè)腳和頁(yè)邊距,注冊(cè)表里的單位是英寸,打印設(shè)置中是毫米,1英寸=25.4毫米 function PageSetup_Null(){ try { var Wsh=new ActiveXObject("WScript.Shell"); HKEY_Key="header"; //設(shè)置頁(yè)眉(為空) Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,""); HKEY_Key="footer"; //設(shè)置頁(yè)腳(為空) Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,""); HKEY_Key="margin_bottom"; //設(shè)置下頁(yè)邊距(0) Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"0.6"); HKEY_Key="margin_left"; //設(shè)置左頁(yè)邊距(0) Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"0.3"); HKEY_Key="margin_right"; //設(shè)置右頁(yè)邊距(0) Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"0.3"); HKEY_Key="margin_top"; //設(shè)置上頁(yè)邊距(8) Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"0.6"); } catch(e){ //alert("不允許ActiveX控件"); } } //設(shè)置網(wǎng)頁(yè)打印的頁(yè)眉頁(yè)腳和頁(yè)邊距為默認(rèn)值 function PageSetup_Default(){ try { var Wsh=new ActiveXObject("WScript.Shell"); HKEY_Key="header"; HKEY_Key="header"; //還原頁(yè)眉 Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,head); HKEY_Key="footer"; //還原頁(yè)腳 Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,foot); HKEY_Key="margin_bottom"; //還原下頁(yè)邊距 Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,bottom); HKEY_Key="margin_left"; //還原左頁(yè)邊距 Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,left); HKEY_Key="margin_right"; //還原右頁(yè)邊距 Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,right); HKEY_Key="margin_top"; //還原上頁(yè)邊距 Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,top); } catch(e){ //alert("不允許ActiveX控件"); } } //取得頁(yè)面打印設(shè)置的原參數(shù)數(shù)據(jù) function PageSetup_temp(){ try { var Wsh=new ActiveXObject("WScript.Shell"); HKEY_Key="header"; //取得頁(yè)眉默認(rèn)值 head = Wsh.RegRead(HKEY_Root+HKEY_Path+HKEY_Key); HKEY_Key="footer"; //取得頁(yè)腳默認(rèn)值 foot = Wsh.RegRead(HKEY_Root+HKEY_Path+HKEY_Key); HKEY_Key="margin_bottom"; //取得下頁(yè)邊距 bottom = Wsh.RegRead(HKEY_Root+HKEY_Path+HKEY_Key); HKEY_Key="margin_left"; //取得左頁(yè)邊距 left = Wsh.RegRead(HKEY_Root+HKEY_Path+HKEY_Key); HKEY_Key="margin_right"; //取得右頁(yè)邊距 right = Wsh.RegRead(HKEY_Root+HKEY_Path+HKEY_Key); HKEY_Key="margin_top"; //取得上頁(yè)邊距 top = Wsh.RegRead(HKEY_Root+HKEY_Path+HKEY_Key); } catch(e){ //alert("不允許ActiveX控件"); } } //設(shè)置網(wǎng)頁(yè)打印的頁(yè)眉頁(yè)腳和頁(yè)邊距,注冊(cè)表里的單位是英寸,打印設(shè)置中是毫米,1英寸=25.4毫米 function PageSetup_Null(){ try { var Wsh=new ActiveXObject("WScript.Shell"); HKEY_Key="header"; //設(shè)置頁(yè)眉(為空) Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,""); HKEY_Key="footer"; //設(shè)置頁(yè)腳(為空) Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,""); HKEY_Key="margin_bottom"; //設(shè)置下頁(yè)邊距(0) Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"0.6"); HKEY_Key="margin_left"; //設(shè)置左頁(yè)邊距(0) Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"0.3"); HKEY_Key="margin_right"; //設(shè)置右頁(yè)邊距(0) Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"0.3"); HKEY_Key="margin_top"; //設(shè)置上頁(yè)邊距(8) Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"0.6"); } catch(e){ //alert("不允許ActiveX控件"); } } //設(shè)置網(wǎng)頁(yè)打印的頁(yè)眉頁(yè)腳和頁(yè)邊距為默認(rèn)值 function PageSetup_Default(){ try { var Wsh=new ActiveXObject("WScript.Shell"); HKEY_Key="header"; HKEY_Key="header"; //還原頁(yè)眉 Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,head); HKEY_Key="footer"; //還原頁(yè)腳 Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,foot); HKEY_Key="margin_bottom"; //還原下頁(yè)邊距 Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,bottom); HKEY_Key="margin_left"; //還原左頁(yè)邊距 Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,left); HKEY_Key="margin_right"; //還原右頁(yè)邊距 Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,right); HKEY_Key="margin_top"; //還原上頁(yè)邊距 Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,top); } catch(e){ //alert("不允許ActiveX控件"); } }
使用該函數(shù),會(huì)彈出
通過網(wǎng)頁(yè)修改activex安全設(shè)置,添加信任站點(diǎn),禁用該彈出窗口提示,代碼如下:
function activeXControl(){ try{ var WshShell=new ActiveXObject("WScript.Shell"); //添加信任站點(diǎn)(http://127.0.0.1) WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet SettingsoneMapRangesRange100",""); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet SettingsoneMapRangesRange100:Range","127.0.0.1"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet SettingsoneMapRangesRange100http","2","REG_DWORD"); //修改IE ActiveX安全設(shè)置: 1本地Intranet區(qū)域 WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones11001","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones11004","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones11200","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones11201","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones11405","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones12201","0","REG_DWORD"); //修改IE ActiveX安全設(shè)置:2受信任的站點(diǎn)區(qū)域 WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones21001","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones21004","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones21200","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones21201","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones21405","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones22201","0","REG_DWORD"); //修改IE ActiveX安全設(shè)置:3Internet區(qū)域 WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones31001","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones31004","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones31200","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones31201","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones31405","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones32201","0","REG_DWORD"); //禁用Winxp彈出窗口阻止程序 WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftInternet ExplorerNew WindowsPopupMgr","no"); }catch(e){ //alert("不允許ActiveX控件"); } } function activeXControl(){ try{ var WshShell=new ActiveXObject("WScript.Shell"); //添加信任站點(diǎn)(http://127.0.0.1) WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet SettingsoneMapRangesRange100",""); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet SettingsoneMapRangesRange100:Range","127.0.0.1"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet SettingsoneMapRangesRange100http","2","REG_DWORD"); //修改IE ActiveX安全設(shè)置: 1本地Intranet區(qū)域 WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones11001","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones11004","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones11200","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones11201","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones11405","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones12201","0","REG_DWORD"); //修改IE ActiveX安全設(shè)置:2受信任的站點(diǎn)區(qū)域 WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones21001","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones21004","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones21200","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones21201","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones21405","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones22201","0","REG_DWORD"); //修改IE ActiveX安全設(shè)置:3Internet區(qū)域 WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones31001","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones31004","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones31200","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones31201","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones31405","0","REG_DWORD"); WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settingsones32201","0","REG_DWORD"); //禁用Winxp彈出窗口阻止程序 WshShell.RegWrite("HKEY_CURRENT_USERSoftwareMicrosoftInternet ExplorerNew WindowsPopupMgr","no"); }catch(e){ //alert("不允許ActiveX控件"); } }
3.問題
1)網(wǎng)頁(yè)修改activex安全設(shè)置該段代碼也是必須在啟用ActiveX的條件下調(diào)用成功,是需要用戶在Internet的配置項(xiàng)中設(shè)置的(如下圖),如何才能自動(dòng)啟用該插件?
2) chrome、火狐如何通過JS設(shè)置頁(yè)邊距、頁(yè)眉、頁(yè)腳?
3) IE高版本瀏覽器、火狐如何通過JS彈出瀏覽器自己的打印預(yù)覽?
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/97000.html
摘要:今天遇到一個(gè)需求,看起來也比較簡(jiǎn)單,就是實(shí)現(xiàn)一個(gè)打印功能。有兩種方法來實(shí)現(xiàn),一種是利用的媒體查詢,另一種則是使用。 今天遇到一個(gè)需求,看起來也比較簡(jiǎn)單,就是實(shí)現(xiàn)一個(gè)打印功能。頁(yè)面中有一個(gè)表單,將表單里的數(shù)據(jù)對(duì)應(yīng)添加到表格中,然后點(diǎn)擊打印按鈕,實(shí)現(xiàn)預(yù)覽打印,這里我用的是iview框架,如下圖所示:showImg(https://segmentfault.com/img/bVbicZo?w...
摘要:一些調(diào)試工具說起手機(jī)端調(diào)試,相比大家都不陌生。能對(duì)手機(jī)進(jìn)行遠(yuǎn)程調(diào)試,能操作,打印輸出等。通過使用實(shí)現(xiàn)本地與遠(yuǎn)程調(diào)試器的通信。安裝各種虛擬機(jī)在電腦上進(jìn)行手機(jī)調(diào)試。服務(wù)端接收到手機(jī)發(fā)來的消息,把消息廣播給所有客戶端。 一些調(diào)試工具 說起手機(jī)端調(diào)試,相比大家都不陌生。 由于手機(jī)瀏覽器沒有像PC端瀏覽器一樣有開發(fā)調(diào)試工具,所以一般手機(jī)端的調(diào)試都要借助于電腦,現(xiàn)在的調(diào)試方式通常有以下幾種。 直...
摘要:比上面的稍微好點(diǎn),支持了一些方面的東西,具體看這個(gè)中文配置參數(shù)評(píng)價(jià)這種方法前端實(shí)現(xiàn),靈活簡(jiǎn)單,而且在頁(yè)面還原上是很好的,生成的過程不需要自己操心,頁(yè)面樣式還可控,可以說是非常不錯(cuò)的。 最近要搞前端html轉(zhuǎn)pdf的功能。折騰了兩天,略有所收,踩了一些坑,所以做些記錄,為后來的兄弟做些提示,也算是回饋社區(qū)。經(jīng)過一番調(diào)(sou)研(suo)發(fā)現(xiàn)html導(dǎo)出pdf一般有這幾種方式,各有各有優(yōu)...
摘要:比上面的稍微好點(diǎn),支持了一些方面的東西,具體看這個(gè)中文配置參數(shù)評(píng)價(jià)這種方法前端實(shí)現(xiàn),靈活簡(jiǎn)單,而且在頁(yè)面還原上是很好的,生成的過程不需要自己操心,頁(yè)面樣式還可控,可以說是非常不錯(cuò)的。 最近要搞前端html轉(zhuǎn)pdf的功能。折騰了兩天,略有所收,踩了一些坑,所以做些記錄,為后來的兄弟做些提示,也算是回饋社區(qū)。經(jīng)過一番調(diào)(sou)研(suo)發(fā)現(xiàn)html導(dǎo)出pdf一般有這幾種方式,各有各有優(yōu)...
摘要:比上面的稍微好點(diǎn),支持了一些方面的東西,具體看這個(gè)中文配置參數(shù)評(píng)價(jià)這種方法前端實(shí)現(xiàn),靈活簡(jiǎn)單,而且在頁(yè)面還原上是很好的,生成的過程不需要自己操心,頁(yè)面樣式還可控,可以說是非常不錯(cuò)的。 最近要搞前端html轉(zhuǎn)pdf的功能。折騰了兩天,略有所收,踩了一些坑,所以做些記錄,為后來的兄弟做些提示,也算是回饋社區(qū)。經(jīng)過一番調(diào)(sou)研(suo)發(fā)現(xiàn)html導(dǎo)出pdf一般有這幾種方式,各有各有優(yōu)...
閱讀 4095·2021-10-08 10:04
閱讀 3076·2021-08-11 11:20
閱讀 2749·2021-07-25 21:37
閱讀 2699·2019-08-30 12:44
閱讀 2326·2019-08-30 11:12
閱讀 1327·2019-08-26 13:45
閱讀 2375·2019-08-26 11:53
閱讀 3071·2019-08-26 11:32