打开/关闭菜单
Toggle preferences menu
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

MediaWiki:Gadget-tikuExtractFromDOM.js:修订间差异

MediaWiki界面页面
无编辑摘要
无编辑摘要
第61行: 第61行:


function sDomTimuList(obj){
function sDomTimuList(obj){
sessionStorage.setItem("DOMTimuList", obj);
sessionStorage.setItem("DOMTimuList", JSON.stringify(obj));
}
}
function gDomTimuList(){
function gDomTimuList(){
return sessionStorage.getItem("DOMTimuList");
return sessionStorage.getItem("DOMTimuList");
}
}

2023年6月13日 (二) 04:28的版本

getDataFromDOM()

function getDataFromDOM(){
    var data = $('.data')
    var dataLength = data.length
    var timuList = {
    	timuCount:0
    	, timuOrder:[]
    	, timu:{}
    	, errorsCount:0
    	, errorsOrder:[]
    	, errors:{}
    }
    for(var i=0;i<dataLength;i++){
    	var dataObj = $(data[i])
    	var dataHTML = dataObj.html()
    	var dataText = replaceHTMLobj(dataHTML, dataObj )
        var dataJSON = {}
        try{
        	dataJSON = $.parseJSON(dataText)
        	timuList.timuOrder.push(i)
        	timuList.timu[i] = {
        		dataJSON: dataJSON
        		, dataObj: $(data[i])
        		, dataHTML: dataHTML
        		, dataText: dataText
        	}
        }catch(e){
        	timuList.errorsOrder.push(i)
        	timuList.errors[i]={
        		info:e
        		, dataObj: $(data[i])
        		, dataHTML: dataHTML
        		, dataText: dataText
        	}
        }
        
    }
    console.log(timuList)
	sDomTimuList(timuList)
}

function replaceHTMLobj(htmlText,htmlObj){
	if(htmlObj.children().length>0){
		htmlObj.children().each(
                function (i,v) {
                    console.log(v)
                    var innerHTML = entityToString(v)
                    console.log(innerHTML)
                    var innerHTMLString  = ''
                    innerHTMLString = innerHTML.replace(/"/g,'\\"')
                    console.log(innerHTMLString)
                    htmlText = htmlText.replace(innerHTML,innerHTMLString)
                }
            )
    }
    console.log(htmlText)
	return htmlText
}

function sDomTimuList(obj){
	sessionStorage.setItem("DOMTimuList", JSON.stringify(obj));
}
function gDomTimuList(){
	return sessionStorage.getItem("DOMTimuList");
}