当前位置: 首页 > news >正文

本地做的网站怎么放到网上去电脑网卡

本地做的网站怎么放到网上去,电脑网卡,企业解决方案业余,无锡响应式网站制作一、什么是Shadow DOM Shadow DOM是一种在web开发中用于封装HTML标记、样式和行为的技术,以避免组件间的样式和脚本冲突。它允许开发者将网页的一部分隐藏在一个独立的作用域内,从而实现更加模块化和可维护的代码结构 二、js操作Shadow DOM // 获取宿…

一、什么是Shadow DOM

  • Shadow DOM是一种在web开发中用于封装HTML标记、样式和行为的技术,以避免组件间的样式和脚本冲突。
  • 它允许开发者将网页的一部分隐藏在一个独立的作用域内,从而实现更加模块化和可维护的代码结构

二、js操作Shadow DOM

// 获取宿主元素
const host = document.getElementById('main');// 创建一个Shadow Root
const shadowRoot = host.attachShadow({mode: 'open'});// 在Shadow DOM中添加内容
shadowRoot.innerHTML = `<style>:host { display: block; }</style><p>Hello, Shadow DOM!</p>`;// 访问Shadow DOM中的内容
const shadowContent = host.shadowRoot.querySelector('p').textContent;
console.log(shadowContent); // 输出: Hello, Shadow DOM!

注意:这里attachShadow函数的mode参数有2种,open和closed。

  • 当mode设置为open时,Shadow DOM是相对开放的。这意味着外部的JavaScript代码可以通过宿主元素的shadowRoot属性访问Shadow DOM。这种访问权限允许开发者读取和修改Shadow DOM的结构和内容。
  • 当mode设置为closed时,Shadow DOM对外部JavaScript是不可访问的。这意味着宿主元素的shadowRoot属性在外部代码中将会返回null,从而无法直接访问或操作Shadow DOM的内容。

三、如何获取closed的shadowRoot里的内容

  • 网络上的数据如果不想让我们获取的话,一定是会使用closed模式,让我们无法js访问。

在这里插入图片描述

  • 但这里我们现在就是要获取closed的数据里面的内容怎么办呢?这里我提供一个解决方案:修改chromium源码,使shadowRoot的mode强行变为open。
1.找到源码:
  • 打开:\third_party\blink\renderer\core\dom\element.cc

  • 找到:

ShadowRoot* Element::attachShadow(const ShadowRootInit* shadow_root_init_dict,ExceptionState& exception_state) {DCHECK(shadow_root_init_dict->hasMode());String mode_string = shadow_root_init_dict->mode();
2.替换为:
ShadowRoot* Element::attachShadow(const ShadowRootInit* shadow_root_init_dict,ExceptionState& exception_state) {DCHECK(shadow_root_init_dict->hasMode());//String mode_string = shadow_root_init_dict->mode();mode_string = "open";
3.编译:
ninja -C out/Default chrome

编译完成后,可以发现所有的shadowRoot状态全部变成open啦。

四、还可以优化

  • 由于有些站会做反爬检测,如果发现shadowRoot返回的不是null后,就返回一些错误信息。
  • 这里我的优化思路是给Element新增一个魔改后的shadowRoot2属性,这样网站继续检测shadowRoot是不会有问题啦,有人关注的话会再补,没人关注就不写了。
  • 励志做个好用的爬虫浏览器。
http://www.yayakq.cn/news/194093/

相关文章:

  • 网站优化的意义春考网页制作素材
  • 假冒建设厅网站wordpress做旅游网站
  • 网站建设 51下拉平台杭州专业网站
  • 常州网站建设费用文登区做网站的公司
  • 做网站需要什么域名wordpress拼团小程序
  • 昭通商城网站建设电商平台数据库设计
  • 磐安网站建设公司wordpress怎么添加子栏目
  • 营销型网站功能模块摄影比赛投稿网站
  • 网站维护与建设考试网站建设知识点有哪些漏缺
  • 梦幻建站网加强网站基础建设
  • 湖南响应式官网建设哪家好有必要买优化大师会员吗
  • 成品网站多少钱有什么兼职做it的网站
  • 做网站国内好的服务器软文营销经典案例200字
  • 常平镇网站建设公司一站式发稿平台
  • 网站建设芜湖鹤壁网站建设兼职
  • 优化网站排名公司怎么健免费网站
  • 西安网站建设开发顺企网下载
  • 建筑行业招聘网站推荐烟台做网站的公司
  • 网站抓取QQ获取系统思明自助建站软件
  • 教育类手机网站模板下载p2f网站系统
  • 网站设计维护内容网站如何做微信推广
  • 网站查询是否安全网上电商怎么做
  • 山东鑫泰建设集团网站wordpress免邮箱验证
  • 空压机网站开发公司新媒体营销与运营
  • 网站做ppt模板下载网站seo思路
  • 襄阳文明建设投诉网站门户网站建设申请
  • 福建省建设相关网站高邑做网站
  • 从事网站建设百度优化教程
  • 新网站建设的工作总结微博推广文案范文
  • 网站做百度推广的要求黄石市网站建设