Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Javascript将HTML页面上的div作为目标来更改元素的内容?_Javascript_Html_Targeting - Fatal编程技术网

如何使用Javascript将HTML页面上的div作为目标来更改元素的内容?

如何使用Javascript将HTML页面上的div作为目标来更改元素的内容?,javascript,html,targeting,Javascript,Html,Targeting,我有一个有趣的问题。我正在运行Squarespace@ 并且需要定位导航入口上的右上角按钮,这意味着登录后会显示通过嵌入代码提供给我的Javascript表单。当代码作为代码块包含在页面主体中时,代码本身工作正常,但Squarespace只允许顶部的导航按钮成为超链接。我没有地方给按钮本身添加代码,因为它主要是一个消费者平台,在您尝试改变其工作方式之前,它非常适合直接的应用程序 他们通过一个代码注入菜单允许定制代码,该菜单将您想要的任何代码添加到页面的HTML标题中,因此我一直在尝试针对这个di

我有一个有趣的问题。我正在运行Squarespace@ 并且需要定位导航入口上的右上角按钮,这意味着登录后会显示通过嵌入代码提供给我的Javascript表单。当代码作为代码块包含在页面主体中时,代码本身工作正常,但Squarespace只允许顶部的导航按钮成为超链接。我没有地方给按钮本身添加代码,因为它主要是一个消费者平台,在您尝试改变其工作方式之前,它非常适合直接的应用程序

他们通过一个代码注入菜单允许定制代码,该菜单将您想要的任何代码添加到页面的HTML标题中,因此我一直在尝试针对这个div,它没有id,但who's class是外部的,使用Javascript将其内容替换为onclick监听器以显示此表单。追踪

这是我的嵌入代码,正如我所说的:

<script>// <![CDATA[
   !function(e,t){e._cc={}, e._cc.host="https://www.coachingcloud.com/";var n=function(){var n=t.createElement("script"),c=t.getElementsByTagName("script")[0];n.src=e._cc.host+"login.min.js",c.parentNode.insertBefore(n,c)};e.addEventListener?e.addEventListener("load",n,!1):e.attachEvent("onload",n)}(window,document);
// ]]></script>

我一直在尝试document.getelementsbyclassnameeternal.innerHTML;但当设置为返回未定义变量时。不熟悉Javascript,但不怕学习。首先,我想弄清楚如何正确地定位div,然后用一个单击即可激活的Javascript函数替换它的内容,目前它是指向404页面的链接。谢谢你的指导

我在你的Chrome网站上测试了以下内容,并成功地更改了内容。该页面包含多个.collection元素,因此我仅选择最后一个元素:

JavaScript/jQuery

$("#mainNavigation .collection").last().html("<a href='/newlink'>Test</a>");

多亏@Arg0n的大力帮助,我现在有了一个有效的登录表单,它出现在我网站最右上角的按钮上。使用:

$function{$mainNavigation.collection.last.htmlIngresar;}

作为替换相关div内容的函数,我插入了Ingrear作为对所提供嵌入代码的调用:

事实证明,一个小小的jQuery有助于访问所需的div,设置它的html内容有点超出了我的专业范围


非常感谢StackOverflow社区帮助我了解如何使用Javascript以页面元素为目标,以程序化方式操作其内容。

点击问题中的链接:Squarespace试用帐户对公众不可见。当您准备发布网站时,升级试用版将使您的网站在world.document.getElementsByClassNameexternal[0].innerHTML;中处于活动状态;。getElementsByClassName返回一个列表。使用浏览器控制台调试这些东西。没错,该网站仍处于试用模式,但可以通过输入验证码轻松访问。实际上,我一直在使用浏览器控制台,只是不确定如何实现您的建议。我不确定如何确认我正确访问了该内容,因为我不知道如何随后替换该div中的内容。@Arg0n您知道如何在访问该div后更改其内容吗?现在,它包含一个指向我404页面的链接,就像我说的,但它需要链接到一个Javascript函数,该函数用于提取我在问题中提到的代码。很高兴它似乎对您有效,但当我将代码放入我的代码注入区时,我仍然没有看到任何结果。我得到的和你刚才说的一模一样,jQuery正在我的网站上运行,因为我正在另一个脚本中使用它$mainNavigation.collection.last.html;是否有可能Squarespace正在覆盖该脚本?看起来我尝试的东西都没有任何效果。你能试着把它放在$function{//code here};?你是个天才。谢谢真管用!但现在,我需要将提供的javascript嵌入其中,而不仅仅是一个新链接。让我很快地试一下,我会回来报告的。好的,现在是棘手的部分。嵌入代码仅在连接到id为cc login的span时激活,因此在其当前在正文中工作的页面上,它看起来是这样的:Ingrear后面是顶部显示的原始嵌入代码,您想做什么?为什么这会获得否决票?这是正确的答案。我应该知道,因为这是我自己的问题,对吗?