Chrome内核使用parseFromString无法获取a的href

jQuery 1.5 Deferred机制解析:从状态机到Promise雏形 Deferred 是一种用于管理异步操作生命周期的状态容器,其核心原理是基于队列与不可变状态开关(resolved/rejected)构建的轻量级状态机。它通过解耦注册时机与执行时机,解决了回调地狱中时序不确定、错误难隔离等根本问题,为现代 Promise/A+ 规范提供了工程化雏形。该机制不仅支撑了 jQuery 的 AJAX 重写与 ready 优化,更成为 React Query、SWR 等现代数据请求库的契约基础。本文深入剖析 jQuery 1.5 中 _Deferred 与 jQuery.Defe 阅读详情

今天把火狐上成功运行的油猴脚本拿到Chrome无法运行,连IE都能成功运行的。

检查发现是获得的href为空

var image_items = PageDOM.getElementsByClassName("_image-items")[0].getElementsByClassName("image-item");
var link = image_items[0].getElementsByTagName("a")[0];
alert(link.href);
找了很久后突发奇想,把

var parser = new DOMParser();
PageDOM = parser.parseFromString(response, "text/html");
改回

var PageDOM = document.createElement("div"); //创建一个容器
PageDOM.innerHTML = response; //插入代码
之后Chrome就能获取到a的href了

因为我的这个a所在页面是用XMLHttpRequest获取的,这次学到了新的DOMParser就用上了,没想到Chrome用DOMParser构建的DOM居然无法获得a的href。


JavaScript中的XML解析器:文件与字符串处理 可扩展标记语言(XML)是一种用于存储和传输数据的标记语言。它与HTML类似,都是SGML(标准通用标记语言)的子集,但XML的设计宗旨是传输数据,而不是显示数据。文档对象模型(DOM,Document Object Model)是一种允许程序和脚本动态访问和更新文档内容、结构和样式的平台和语言无关的接口。它将整个文档表示为一个树形结构,每个节点代表文档中的一个部分,如一个元素、属性或文本。W3C标准的DOM操作允许开发者使用JavaScript来创建、修改、删除或重新排列文档中的节点。 阅读详情

相关推荐

JavaScript中XML与JSON互转实战详解

一个典型的递归转换函数应接收以下参数:node: 当前正在处理的 XML 节点(Node 类型)parentObj: 父级 JSON 容器对象,用于挂载新属性depth: 当前嵌套层级,用于日志调试或防止栈溢出if (!// 提取属性// 处理子节点});// 将 childObj 挂载到 parentObj// 已存在,转为数组if (!} else {逻辑分析- 第 1 行:入口函数,接受三个参数。

weixin_36288992的博客 788

protobuf 的序列化与反序列化

bool ParseFromString(const string& data);

su_787910081的专栏 1万+

百度智能云训练图像分割模型+python调用模型并分割图像

目录 训练模型阶段 发布图像分割API 调用图像分割API 创建应用后显示以下两个代码 在pycharm中可以调用API mask解码 依赖库pycocotools安装步骤: 依赖库urllib2的安装 源码下载: 最近上课听老师介绍了一个训练图像分割模型的网站,把数据集上传之后做图像标注,然后进行训练就能得到准确率等指标。 训练模型阶段 图像分割:https://ai.baidu.com/easydl/vision/ 图像分割-->创建模型-->上传数据--&gt

icecreamdinner的博客 1388

HTMLParser使用详解

研究搜索引擎的开发中,对于HTML网页的处理是核心的一个环节。网上有很多开源的代码,对于Java来说,HTMLParser是比较著名并且得到广泛应用的一个。HTMLParser的主页是http://htmlparser.sourceforge.net/,最后的更新是2006年9月的1.6版。不过没关系,HTML的内容已经很久没有大的变化了,HTMLParser处理起来基本没有任何问题。HTMLPa

qdsy521的专栏 3441

一种解决STM32多串口同时收发的方法

在做项目中,遇到了同时调用串口通信时程序崩溃的问题,在项目中,串口1用作调试串口,串口2用作MQTT通信串口,串口3用作下位机通信串口, 串口1重定向以后,用库函数自带的printf函数打印字符串 串口2使用自己写的u2_printf函数,即va_list这套变参宏定义后使用vsprintf函数打印字符串 串口3刚开始使用串口2一样的打印方式,程序在调试调用到串口3打印函数时直接崩溃,后续将串口3改用dma转存输出,仍然无法正常调用 多次研究以后,采用三个串口都使用重定向后的库函数自带的printf

Zxp0605的博客 8796

代谢组数据分析(一):生成代谢组数据SummarizedExperiment对象

本文介绍了基于Zeybel 2022年发布的多组学数据集的分析脚本,该数据集包含微生物组、宿主人体学指标、临床学指标、血浆代谢组和免疫因子等多维度数据,涵盖56位患者的横截面数据和22位患者的纵向时间序列数据。脚本旨在生成适用于下游分析的数据对象,主要包括phyloseq和SummarizedExperiment两类。phyloseq对象用于整合微生物群落数据,支持多数据整合、可视化、丰富分析功能和便捷的数据处理;SummarizedExperiment对象则广泛应用于基因组学和转录组学研究,便于数据整合、

专注生信领域 2989

DOMParse()手动解析DOM树

使用DOMParser的parseFromString(fragment, mineType)方法需要传两个参数,第一个是DOM字符串,第二位用于确定方法返回的类型。这里给大家介绍一个浏览器API,我们都知道浏览器在渲染时,DOM文档会被解析生成DOM树,而此过程它就需要靠DOMParse这个API来完成。使用默认浏览器打开实践操作部分新建和编写的程序,就会发现程序已经在控制台获取,并打印了parseTagContent函数解析的DOM字符串的纯文本,效果如下图所示。是这样定义的,DOMParser。

qq_58062502的博客 2654

深度学习特征融合(feature fusion)操作详解

特征融合是指在深度神经网络中,将来自不同来源(如不同网络分支、不同模态、不同时间步、不同空间尺度或不同抽象层级)的特征表示进行有策略地整合,以生成更具判别性、鲁棒性和语义丰富性的联合特征表示。其核心目标是最大化信息互补性,最小化信息冗余与噪声干扰。关键问题:如何“有效”融合?——这取决于任务需求、数据特性、计算资源和融合机制的设计。✅ 是否对齐了空间/通道/模态?✅ 融合方式是否与任务匹配?(检测需定位+语义 → 多尺度融合)✅ 是否引入可学习机制提升适应性?✅ 是否控制了计算开销?

浩瀚之水的专栏 793

protobuf进行ParseFromString解包失败的一个常见问题

今天在项目中,使用protobuf进行解包时

werflychen的专栏 4万+

数字信号处理----数字上变频和下变频都FPGA实现

** 数字信号处理基础----信号下变频和解调 一、 任务介绍 数字上变频器(DUC)和数字下变频器(DDC)广泛应用于通信系统,用于信号采样速率的转换。当信号从基带转换至中频( IF )带,需要使用数字上变频器。而数字下变频器是用于将信号从中频( IF )带转换为基带。DUC和DDC通常包括使用混频器进行频率转换,此外还有采样率转换。DUC或DDC的结构主要取决于所需要的转换率。例如,WiMAX (全球互通微波接入)系统典型的转换率为8—10阶。对于如此低的转换率,DUC和DDC只需采用FIR滤波器架构。

Born_toward的博客 3万+

selenium绕过检测,规避检测

现在不少大网站有对selenium采取了监测机制。比如正常情况下我们用浏览器访问淘宝等网站的 window.navigator.webdriver的值为 undefined或者为false。而使用selenium访问则该值为true。那么如何解决这个问题呢?我们正常浏览器登录查看,window.navigator.webdriver的值为false我们通过selenium打开的网页,测试,可见window.navigator.webdriver的值为true。

景天科技苑 1万+

不合法的XML字符必须被替换为相应的实体

转义字符不合法的XML字符必须被替换为相应的实体。 如果在XML文档中使用类似"<" 的字符, 那么解析器将会出现错误,因为解析器会认为这是一个新元素的开始。所以不应该象下面那样书写代码: <message>if salary < 1000 then</message> 为了避免出现这种情况,必须将字符"<" 转换成实体,象下面这样: <...

weixin_30296405的博客 496

Isaac Sim 入门教程(四)强化学习策略训练宇树人形机器人四足机器人示例

isaac_sim_policy_example Extension 是在 Isaac Sim 中部署 Isaac Lab 强化学习策略的一个框架和一组辅助函数。有关在 Isaac Sim 中训练和构建策略的详细信息,请访问在 Isaac Sim 中部署策略。该扩展程序默认已启用。如果被禁用,可在扩展管理器中搜索 isaacsim.robot.policy.example 重新启用。要运行下面的示例,请激活 “视窗”>“示例”>“机器人示例”,这将打开 “机器人示例 ”选项卡。

机器人控制与仿真应用 3924

XML 解析器 (Parser)

大多数浏览器都有读取和操作 XML 的内建 XML 解析器。 解析器把 XML 转换为 JavaScript 可访问的对象。 一. 通过微软的 XML 解析器来加载 XML 微软的 XML 解析器内建于 Internet Explorer 5 以及更高的版本中。微软的 XML 解析器与其他浏览器中的解析器之间,存在一些差异。微软的解析器支持 XML 文件和 XML 字...

weixin_34401479的博客 319

Atlas 300I Duo - vllm部署Qwen3-VL-8B-Instruct

本文介绍了在Ascend NPU环境下部署Qwen3-VL-8B大语言模型的步骤。主要包括:1)安装驱动、docker和vllm镜像;2)创建特权容器并挂载设备与目录;3)进入容器安装指定版本的transformers;4)设置环境变量和NPU卡配置;5)启动vllm服务;6)测试API接口。部署过程涉及多块NPU卡的使用,需注意内存碎片化问题,最终通过vllm框架提供模型推理服务。

m0_50105717的博客 1561

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

如何用js获取xml格式数据的节点名称

可以使用 JavaScript 中的 DOM 操作来获取 XML 数据的节点名称。首先,需要解析 XML 数据,然后使用 DOM 操作获取节点信息。 下面是一个示例: // 解析 XML 数据 var parser = new DOMParser(); var xmlDoc = parser.parseFromString(xmlString, "text/xml"); // 获取节点名称 va...

weixin_42591908的博客 525

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

javascript基础学习系列三百五十五:DOMParser类型

Firefox 专门为把 XML 解析为 DOM 文档新增了 DOMParser 类型,后来所有其他浏览器也实现了该 类型。要使用 DOMParser,需要先创建它的一个实例,然后再调用 parseFromString()方法。这个方 法接收两个参数:要解析的 XML 字符串和内容类型(始终应该是"text/html")。返回值是 Document 的实例。

m0_68635815的博客 1548

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

javascript基础从小白到高手系列二百零七:DOMParser 类型

Firefox 和Opera 此时会返回document 元素为的文档,而在Chrome 和Safari 返回的文。要使用DOMParser,需要先创建它的一个实例,然后再调用parseFromString()方法。档传给serializeToString()时,这个文档会被当成XML 文档,因此得到的结果是格式良好的。DOMParser 只能解析格式良好的XML,因此不能把HTML 解析为HTML文档。档中,是的第一个子元素。这个例子中解析的XML 字符串少一个标签,因此会导致解析错误。

wanmeijuhao的博客 499

如何将普通字符串转化为dom节点插入页面

主要转化原理 将存储在存储在字符串中的XML或HTML解析为一个DOM文档,然后使用parseFromString方法将这个DOM文档转化为一个DOM对象。选择到要插入的节点后使用append方法插入到对应的位置即可。 有点懵?没关系,继续往下看。 主要操作 创建DOMParser()文档 使用parseFromString()方法将DOMParser()文档转化为DOM对象 选择D...

momDIY的博客 7494

javascript基础从小白到高手系列五百零七:DOMParser 类型

Firefox 和Opera 此时会返回document 元素为的文档,而在Chrome 和Safari 返回的文。要使用DOMParser,需要先创建它的一个实例,然后再调用parseFromString()方法。档传给serializeToString()时,这个文档会被当成XML 文档,因此得到的结果是格式良好的。DOMParser 只能解析格式良好的XML,因此不能把HTML 解析为HTML文档。档中,是的第一个子元素。这个例子中解析的XML 字符串少一个标签,因此会导致解析错误。

wanmeijuhao的博客 512

DOM

XMLDOM Basic 文件物件模型(Document Object Model):是W3C组织推荐的处理可扩展置标语言(XML)的标准编程接口。 XML 文档对象模型定义访问和操作XML文档的标准方法。 XML Document Object Model 用于 XML 的标准对象模型, 用于 XML 的标准编程接口, 中立于平台和语言, W3C 的标准

Fix it 1083

javascript基础从小白到高手系列二千零七:DOMParser 类型

Firefox 和Opera 此时会返回document 元素为的文档,而在Chrome 和Safari 返回的文。要使用DOMParser,需要先创建它的一个实例,然后再调用parseFromString()方法。档传给serializeToString()时,这个文档会被当成XML 文档,因此得到的结果是格式良好的。DOMParser 只能解析格式良好的XML,因此不能把HTML 解析为HTML文档。档中,是的第一个子元素。这个例子中解析的XML 字符串少一个标签,因此会导致解析错误。

wanmeijuhao的博客 614

javascript基础从小白到高手系列一千九百零七:DOMParser 类型

Firefox 和Opera 此时会返回document 元素为的文档,而在Chrome 和Safari 返回的文。要使用DOMParser,需要先创建它的一个实例,然后再调用parseFromString()方法。档传给serializeToString()时,这个文档会被当成XML 文档,因此得到的结果是格式良好的。DOMParser 只能解析格式良好的XML,因此不能把HTML 解析为HTML文档。档中,是的第一个子元素。这个例子中解析的XML 字符串少一个标签,因此会导致解析错误。

wanmeijuhao的博客 718

如何解析XML字符串?

在大多数情况下,DOMParser是更优的选择,因为它提供了更好的兼容性和性能。选择XmlParser还是XmlSlurper主要取决于具体的应用场景。如果需要频繁地更新和读取XML数据,或者需要同时进行这两种操作,XmlParser是更好的选择。

破损的天堂鸟博客 1319

JS解析XML文件和XML字符串

JS解析XML文件   script type='text/javascript'>     loadXML = function(xmlFile){         var xmlDoc=null;         //判断浏览器的类型         //支持IE浏览器         if(!window.DOMParser && window.ActiveXO

athrenzala的专栏 1437
上一篇: APNG帧Dispose、Blend属性解释
下一篇: Vbsedit 安装 8.0 导致 7.x无法运行的解决办法
枫谷剑仙
博客等级 码龄16年 13粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值