POST TIME:2018-02-04 22:54
給zblog添加上“運行代碼”的功能,因為經常要貼出一些代碼,所以用上這個“運行代碼”的功能,是最為方便的了。
下面轉一下方法,相關討論參見“z-blog論壇”。
如果你按如下步驟設置完畢,調用這個功能的方法是,在文章編輯區中加入[ code ]你的代碼[ /code ],因為這是是演示,所以“中括號”與code之間留了空格,你實際用的時候,請去掉空格。
1、在zb_system/script/common.js里面增加
//********************************************************* //目的:代碼運行框 //輸入:obj //返回: //********************************************************* functioncopycode(obj){ varrng=document.body.createTextRange(); varobj1=document.getElementById(obj) rng.moveToElementText(obj1); rng.scrollIntoView(); rng.select(); rng.execCommand("Copy"); rng.collapse(false); } functionrunCode(obj){ varwinname=window.open('',"_blank",''); varobj1=document.getElementById(obj) winname.document.open('text/html','replace'); winname.opener=null//防止惡意修改 winname.document.writeln(obj1.value); winname.document.close(); } functionsaveCode(obj){ varwinname=window.open('','_blank','top=10000'); varobj1=document.getElementById(obj) winname.document.open('text/html','replace'); winname.document.writeln(obj1.value); winname.document.execCommand('saveas','','code.htm'); winname.close(); }
2、zb_system/FUNCTION/c_function.asp,查找
FunctionTransferHTML(ByValsource,ByValpara)
注釋掉或者刪掉下面這句
IfInstr(para,"[space]")>0Thensource=Replace(source,""," ")
查找
objRegExp.Pattern="([CODE])(.+?)([/CODE])" strContent=objRegExp.Replace(strContent,"<textareaclass=""code""rows=""10""cols=""50"">$2</textarea>")
替換為
DimcodeNum,rndStr codeNum=0 Randomize rndStr=int(rnd*100) strContent=objRegExp.Replace(strContent,"<textareaclass=""code""name=""code"&rndStr&codeNum&"""id=""code"&rndStr&codeNum&"""rows=""10""cols=""50"">$2</textarea><br/><inputtype=""button""value=""運行代碼""onclick=""runCode('code"&rndStr&codeNum&"')""><inputtype=""button""value=""""onclick=""copycode('code"&rndStr&codeNum&"')""><inputtype=""button""value=""另存代碼""onclick=""saveCode('code"&rndStr&codeNum&"')"">提示:您可以先修改部分代碼再運行") codeNum=codeNum+1
3、重建所有頁面
4、最后,試一下效果,因為在“可視編輯”狀態中,編輯器不知給代碼做了什么處理,導致不能運行,所以建議一些復雜代碼,還是用“源代碼”保險。
[code]
Home
About Me
Portfolio
Blog
Resources
Contact Me
Home
About Me
Portfolio
Blog
Resources
Contact Me
Home
About Me
Portfolio
Blog
Resources
Contact Me
Home
About Me
Portfolio
Blog
Resources
Contact Me
[/code]