草庐IT

单节点

全部标签

javascript - window.getSelection(),如何判断 anchor 节点是否在焦点节点之前?

我只想允许从左到右进行选择,因此anchor节点始终是DOM树中的第一个节点(相对于焦点节点)。有没有一种简单的方法来测试anchor节点是否在焦点节点之前? 最佳答案 这是一种简单的方法,它利用了将DOM范围的末尾设置在文档中比范围开始更早的位置会折叠该范围这一事实。我认为这会在Firefox2中中断,它在处理这个问题时有一个错误,但该浏览器的用户数量很少。functionisSelectionBackwards(){varbackwards=false;if(window.getSelection){varsel=window.

javascript - MouseOver/MouseOut 事件监听器继承到子节点?

编辑:解决方案感谢Gaby寻求解决方案的帮助!没有完全按照我想要的方式工作,找到了一个根据答案修改的更好的解决方案。我所做的只是在两个元素(目标和相关目标)不共享父元素时执行鼠标悬停/鼠标移出功能。只是稍微修改了Gaby的示例,一切正常。只要你的弹出窗口与生成它的任何东西都在同一个div元素内(即使它在主要内容之外,你可以附加它并显示溢出)并且你不会在到达它的途中在非共享元素之间穿梭,它会活着。divContents.addEventListener('mouseover',mouseEnter(showPopup,divContents));divContents.addEventL

javascript - 在 Ext.tree.panel 的特定位置插入一个节点

我正在尝试更改此extjstreegrid示例:http://dev.sencha.com/deploy/ext-4.0.1/examples/tree/treegrid.html我只想在特定位置添加一个节点。我试过这个:vartreePanel=Ext.getCmp('treePanel');varselNode=treePanel.getSelectionModel().getSelection()[0];varappendedChild=selNode.appendChild({task:'Task1',user:'Name',duration:'10',leaf:true});

javascript - 如何以编程方式选择 jsTree 中的节点并打开所有父节点

在多级jsTree中,如何选择特定节点(可能是叶节点)并展开它的所有父节点?示例:从这个JSFiddle(http://jsfiddle.net/mmeah/fyDE6/)我想以编程方式选择GrandChild并打开所有父节点。在某些情况下,如果用户通过深层链接进入我的网站,我会尝试确保用户返回到树中的正确节点 最佳答案 jsTree给出了一个open_node()函数来任意触发任意节点打开。只需扫描树中未打开的父项并打开它们即可。例子:http://jsfiddle.net/mmeah/yyy8W/$("#findChild").

javascript - cytoscape.js 缩放以适合当前选定的节点

我希望缩放cyjsView以适合(很好地包含)当前选定的节点。可以手动或以编程方式选择节点。如果只选择了一个小的网络邻居,那么放大效果会非常显着。如果远处的节点在选择中,则放大甚至可能不会引人注意。cy.fit()非常适合在窗口中显示整个网络。但是尽我所能,我找不到cy.fitSelected()或一些等效的功能。有什么建议吗? 最佳答案 这是一个单行代码,因为cy.fit()将eles作为它的第一个参数:例如cy.fit(cy.$(':selected'),50)填充50http://cytoscape.github.io/cyt

javascript - 使用 React.JS 检索和缓存 SVG 节点边界框​​的最佳方法

我正在渲染带有标签的SVG组件。这些标签组件需要根据它们的文本内容(以及它们的大小)正确布局,以避免相互重叠。要获得每个标签的真实大小,似乎每次更新标签内容时都需要双重渲染。在标签组件级别,我需要第一次渲染检索真实SVGDOM节点的边界框出于性能原因缓存边界框重新渲染组件以根据其缓存的边界框调整标签位置然后,在每次重绘时:根据缓存的边界框渲染比较之前和更新的props之间的标签内容,如果有变化:更新并缓存标签边界框根据更新和缓存的边界框重新渲染到目前为止,这是我实现标签组件的方式:varLabel=React.createClass({updateBBox:function(){//T

javascript - 在固定节点之间绘制多个链接

我有一个力导向图,每个节点之间都有链接。现在一些节点对有多个相互连接的链接。我找到了这个例子:Drawingmultipleedgesbetweentwonodeswithd3.我觉得这很管用。但是如果你有固定的节点并拖动,路径最终会相互重叠。我整理了这个例子的编辑版本:http://jsfiddle.net/thatOneGuy/7HZcR/502/单击按钮固定节点并四处移动它们以了解我的意思。计算弧度的代码://sortlinksbysource,thentargetlinks.sort(function(a,b){if(a.source>b.source){return1;}el

Javascript:检测插入符父节点

我正在iframe中构建一个简单的WYSIWYG编辑器,并启用designMode,目前我可以将所选文本设置为粗体、斜体和下划线以及链接,它们工作正常。但我想知道什么时候caret在b里面,i,u,a,标签,所以我可以通知用户当前选择是粗体或其他。例子:HelloStackover|flowiscool!=你在b里面标签Be|stplace!=你在i里面标签HelloGo|odstuff!=你在a里面标签请不要图书馆我想学习这些东西:) 最佳答案 MSIELTE8:TextRange.parentElement()其他:DOMRan

javascript - 增加我的 D3 树布局的节点之间的差距

如图所示,我试图增加树布局两侧最后节点之间的间隙,因为它们重叠有没有办法在D3中做到这一点?{"name":"","type":"network","children":[{"name":"","type":"lb","children":[{"name":"","type":"mm","id":"app","connServer":"s","size":3938}]},{"name":"","type":"vm","children":[{"name":"","type":"container","children":[{"name":"","type":"appServer","i

javascript - Cytoscape.js 如何在指定位置添加节点?

我想在指定位置添加节点。我首先尝试在相同位置(x=0,y=0)添加两个节点,如下所示:$(document).ready(function(){varcy=cytoscape({container:document.getElementById('cy'),});cy.add([{group:"nodes",data:{id:"n0"},position:{x:0,y:0}},{group:"nodes",data:{id:"n1"},position:{x:0,y:0}},]);});我希望它能在同一位置显示两个节点,一个在另一个之上。但结果却出乎意料。这是我得到的:事实上,无论我指