使用Chrome浏览器(从技术上讲,Iron),我希望有一个书签会覆盖expand macro中的Confluence(技术上是Atlassian Confluence 5.2.3),所以没有使用小书签后,这些部分会被折叠。
为什么呢?当我在Confluence中搜索扩展宏后面的关键字时,将在文章中的某个位置使用关键字在搜索结果中标识文章,但是当您导航到文章时,我找不到该文字。所以我在页面(ctrl + f)中为单词执行查找,但它没有出现。点击所有展开的宏链接后,再次尝试查找页面,我就能找到我的关键字。
由于我不是编码员,我已尽力而为......使用此处的代码: Javascript debut - from Chrome console to a bookmarklet并使用我写了以下内容:
javascript:void((function(){function getElementsByClassName(classname, node){if(!node) node = document.getElementsByTagName("body")[0]; var a = [];var re = new RegExp('\\b' + classname + '\\b'); var els = node.getElementsByTagName("*");for(var i=0,j=els.length; i<j; i++)if(re.test(els[i].className))a.push(els[i]);return a;};var elems = getElementsByClassName('ajs-content-hover');for (var i=0;i<elems.length;i+=1){elems[i].style.display = '';}})());
我相信扩展操作来自某个div上名为ajs-content-hover的类。我可能完全错了。为什么我认为这是班级:
我使用expand宏浏览了一个页面,使用了Browser Developer Tools(ctrl-shift-I),转到了元素选项卡,点击了一个我知道使用扩展宏的链接 - 当前没有展开(这是默认行为) ,并确定以下html:
<div id="content-hover-1" class="ajs-content-hover" style="display: none;"><div class="contents" style="width: 300px;"></div></div>
。我找到了这种类型的多个div,它们具有不同的ID,但具有相同的类和相同的样式。
我的第一个书签改变了整个页面的样式,这不是我想要的(导致空白页面)。所以我认为定位课程可能是合适的,但这也不起作用。
希望这是充分的解释,以证明问题,采取的步骤,动机(有时在SO上受到质疑)和期望的状态。我正在寻找一个可以让我找到工作书签的解释。
答案 0 :(得分:2)
我通过利用Confluence附带的jQuery库解决了这个问题。 这允许您使用CSS选择器轻松地定位元素。
另外,如果您还没有这样做,请使用Chrome中的控制台或使用Firebug来测试您的代码。
使用标准扩展宏时,&#39;链接&#39; (实际上只是一个span
)您单击以展开面板,有一个名为expand-control
的类。
只需使用班级名称选择所有点击目标,然后拨打&#39;点击&#39;事件。所有关闭的面板将打开,所有打开的面板将关闭。
javascript:$('.expand-control').click();