gpt4 book ai didi

javascript - 在 iframe 中选择内容

转载 作者:行者123 更新时间:2023-11-30 13:00:55 27 4
gpt4 key购买 nike

我正在处理的项目设计有实时聊天插件和标题上的图像,显​​示在线/离线。我正在尝试处理将在代理在线时放置“在线”图像的脚本。

插件的标题显示状态,像这样

<span __jx__id="___1_livehelpbutton__agentstatus" class="agentStatus" style>Offline</span>

我想获取标签的 innerHTML 并在 if 语句的条件中使用它,如果状态为“在线”,则显示“在线”图像,否则显示离线图像。那就是我遇到问题的地方。我在选择此标签时遇到问题。当我在控制台上尝试此操作时,我得到 [] 并且屏幕上没有任何变化。

$('.agentStatus').css('background','red');

作为 CSS 页面上的测试,我尝试 .agentStatus { background: red; }, 背景变成红色。

它所在的 iframe 没有不同的 url:

<iframe __jx__id="___$13__iframe src="javascript:void(document.write('<!DOCTYPE HTML PUBLIC -//W3C//DTD HTM…order-box}</style></head><body></body></html>'), document.close())" frameborder="0" style=" background-color: transparent; vertical-align: text-bottom; overflow: hidden; position: relative; width: 100%; height: 100%; margin: 0px; z-index: 999999;">
#document
<!DOCTYPE html PUBLIC"-W3C//DTD HTML 4.0 Transitional/EN" "http:www.w3.org/TR/html4/loose.dtd"
<html style="overflow-y: hidden">
...

最佳答案

问题是如果不首先获取 iframe 显示的文档,您就无法访问 iframe 中的内容。

post比我能更好地解释这一点。

在 JavaScript 或 jQuery 中没有实际的方法来执行此操作,除非 iframe 的源位于同一域(研究“跨域和 JavaScript”)。但是,如果它们在同一个域中,您应该能够使用以下方法选择(和操作)元素:

$("#iframeID").contents().find(".agentStatus").css("background", "red");

post还展示了一些替代解决方案。

关于javascript - 在 iframe 中选择内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17431418/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com