Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.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并替换它?_Javascript_Html_Css_Jscript - Fatal编程技术网

Javascript-搜索网站的HTML并替换它?

Javascript-搜索网站的HTML并替换它?,javascript,html,css,jscript,Javascript,Html,Css,Jscript,嗯,就像我的头衔上说的。 是否可以搜索整个页面的HTML/CSS,然后使用JavaScript替换某些字符串 我试着自己做点什么,但我做错了 var i, sig = document.getElementsByClassName('signaturecontainer'); for (i = 0; i < sig.length; i++) { var str = sig[i].innerHTML; var n = str.replace(/< div style='

嗯,就像我的头衔上说的。 是否可以搜索整个页面的HTML/CSS,然后使用JavaScript替换某些字符串

我试着自己做点什么,但我做错了

var i, sig = document.getElementsByClassName('signaturecontainer');
for (i = 0; i < sig.length; i++)
{
    var str = sig[i].innerHTML;
    var n = str.replace(/< div style='250px;overflow:scroll;'/g, "< div > style='height:100%'");
}
var i,sig=document.getElementsByClassName('signaturecontainer');
对于(i=0;istyle='height:100%”);
}
我之所以要替换字符串而不是使用.innerHTML并仅进行编辑,是因为我要更改的div没有ID/Class

这是我需要更改的行:


最后由X编辑;今天早上6点32分。

//我们将不知道这不是不可能的,使用JavaScript,您可以通过定位要更改的标记来解析HTML文档。比如说

    <div id="getThisChanged">change this text</div>

文本将更改为“文本现在已更改”

这一行将出现问题:

    var new = str.replace(/< div style='250px;overflow:scroll;'/g, "< div > style='height:100%'");

我想有很多方法。你能提供一个你想替换的东西的具体例子吗?如果内容被构造为DOM元素,那么它们将非常容易操作。如果需要在单个DOM元素中标识特定的文本,那么仍然可以通过一些字符串操作来完成。(请参阅MDN参考:)仅当您指定要搜索的特定位置时,它将始终在整个页面中搜索您指定的元素。我不确定我发布的脚本中是否包含所有内容,因为它删除了带有“
”的行,但没有空格等。好吧,我注意到的第一件事是您正在命名一个变量
new
<代码>新建
是保留关键字。(提示:使用更有意义的变量名有助于避免这种冲突。)一旦解决了这个问题,该代码以什么方式不能按预期工作?有什么错误吗?好吧,如果你看一下我发布的小片段,希望你能理解。若否,;我会尽量解释得更好@David-将其改为“n”。问题是,为什么我需要搜索字符串并替换它,是因为它没有id/类名:/n这对我不起作用,因为我有这一行;我无法编辑它,因此我想使用jScript:如果您总是编辑包含可识别类的
,则可以选择
的父节点并调整其样式。我已经相应地唤醒了我的代码片段。嗯,现在当我再次尝试时,它有点奏效了!:)它现在添加了一行looooong,但几乎是我想要的。左边是一个签名,右边是我的卷轴。它添加了10000px之类的东西,哈哈。你可以在这里看到;编辑@^;只有在我“重新加载并运行”的情况下,它才会这样做,不管我是采用1%还是100%,它的高度都是一样的s
            document.getElementById('getThisChanged').innerHTML("text is now changed");
    var new = str.replace(/< div style='250px;overflow:scroll;'/g, "< div > style='height:100%'");
var i, sig = document.getElementsByClassName('signaturecontainer');
for (i = 0; i < sig.length; i++)
{
  sig[i].parentNode.style.height = "100%";
}