mirror of
https://github.com/pysunday/sdenv.git
synced 2025-04-12 03:37:16 +08:00
feat: dom动态解析问题适配
This commit is contained in:
parent
31611433cb
commit
30f78974e9
16
browser/chrome/document-element.js
Normal file
16
browser/chrome/document-element.js
Normal file
@ -0,0 +1,16 @@
|
||||
const utils = require('sdenv-jsdom/lib/jsdom/living/generated/utils.js');
|
||||
const sdenv = require('sdenv-extend').sdenv();
|
||||
const document = sdenv.memory.sdWindow.document;
|
||||
|
||||
const getElementsByTagNameOri = document.getElementsByTagName;
|
||||
document.getElementsByTagName = (...params) => {
|
||||
var findArr = getElementsByTagNameOri.apply(document, params);
|
||||
if (params[0] === 'script' && document.readyState === 'loading' && document[utils.implSymbol]._currentScript) {
|
||||
// dom动态解析的临时解决方案,看后续是否会产生其它问题
|
||||
const findIdx = [...findArr].indexOf(document[utils.implSymbol]._currentScript[utils.wrapperSymbol]);
|
||||
if (findIdx > -1) {
|
||||
return [...findArr].slice(0, findIdx + 1);
|
||||
}
|
||||
}
|
||||
return findArr;
|
||||
}
|
@ -10,3 +10,4 @@ require('./ctorRegistry');
|
||||
require('./location');
|
||||
require('./indexedDB');
|
||||
require('./RTCPeerConnection');
|
||||
require('./document-element');
|
||||
|
@ -1,4 +1,6 @@
|
||||
require('module-alias/register');
|
||||
// const jsdomDevtoolsFormatter = require('jsdom-devtools-formatter');
|
||||
// jsdomDevtoolsFormatter.install();
|
||||
const SdenvExtend = require('sdenv-extend');
|
||||
|
||||
module.exports = (win, type = 'chrome') => {
|
||||
|
Loading…
x
Reference in New Issue
Block a user