寻找一个JavaScript创可贴

寻找一个JavaScript创可贴,javascript,Javascript,我在一个JavaScript文件中有一些代码,该文件在我的页面底部靠近结束标记的地方调用,确实应该进行调整 if(wa.URLchunk1 == "https://www.example.com/bla/") { wa.selectedLink = dojo.query ('.wcmLeftNavSelectedLink')[0].innerHTML; if(wa.selectedLink.indexOf('some text') != -1) wa.custom

我在一个JavaScript文件中有一些代码,该文件在我的页面底部靠近结束标记的地方调用,确实应该进行调整

if(wa.URLchunk1 == "https://www.example.com/bla/") {
    wa.selectedLink = dojo.query ('.wcmLeftNavSelectedLink')[0].innerHTML;
    if(wa.selectedLink.indexOf('some text') != -1)
        wa.customPageName = wa.customPageName + 'some text/';
    else if(wa.selectedLink.indexOf('some other text') != -1)
        wa.customPageName = wa.customPageName + some other text/';
    else if(wa.selectedLink.indexOf('some other other text') != -1)
        wa.customPageName = wa.customPageName + 'some other other text/';
}
在大多数情况下,这段代码对我来说都很好,但在某些情况下,wcmLeftNavSelectedLink类是未定义的,这会破坏我的代码。理想情况下,应该调整代码,使其包含逻辑,以便在该类存在时仅设置wa.selectedLink。然而,我的问题是我不能再更新这个JavaScript文件了。我的客户将代码冻结到位,不允许对网站进行任何更新,因为它最终将被淘汰

我有一个标签管理平台,所以我可以在页面中进一步设置新的JavaScript所以我的问题是,当wcmLeftNavSelectedLink类未定义时,是否有任何巧妙的解决方法可以阻止此代码触发,请记住我不能直接更改代码。我只能在此代码激发之前设置新代码


仅供参考,wa.URLCUNK1在此JS文件之前设置为nothing(无),因此我不能手动将其设置为其他值,除非有办法设置变量,并且不允许随后对其进行更改。

如果您可以在此JS之前添加HTML,请执行以下操作:

<span class="wcmLeftNavSelectedLink" style="display:none"></span>

如果已经存在匹配的元素,则该元素将是第一个
[0]
,并且该元素将被忽略


如果不匹配,这将与您的任何情况都不匹配,因此代码实际上不起任何作用。

如果您可以在此JS之前添加HTML,请执行以下操作:

<span class="wcmLeftNavSelectedLink" style="display:none"></span>

如果已经存在匹配的元素,则该元素将是第一个
[0]
,并且该元素将被忽略


如果不存在,这将与您的任何情况都不匹配,因此代码实际上没有任何作用。

只要在不存在的情况下进一步添加一个类,那么代码就不会出错。这是我最近看到的最奇怪的请求之一。无意冒犯,但是告诉客户如果他想要修复错误,您需要更改代码。如果你做不到,他就只能忍受了。哈哈,弗洛里安。是的,这个客户是一个不容易对付的人只要在不存在的情况下再添加一个类,代码就不会出错。这是我最近看到的最奇怪的请求之一。无意冒犯,但是告诉客户如果他想要修复错误,您需要更改代码。如果你做不到,他就只能忍受了。哈哈,弗洛里安。是的,这个客户是一个不容易对付的人我喜欢解决方案简单的时候。谢谢你,保罗。我喜欢解决方案简单的时候。谢谢你,保罗。