Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.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
Dom 您需要获取其包含的ExtJS组件_Dom_Extjs_Dependencies_Components_Element - Fatal编程技术网

Dom 您需要获取其包含的ExtJS组件

Dom 您需要获取其包含的ExtJS组件,dom,extjs,dependencies,components,element,Dom,Extjs,Dependencies,Components,Element,Niklas对如何选择组件和元素的回答非常好。我要添加的唯一内容是,您可以使用up()和down()来选择相对于组件的内容。这样,您应该在组件上使用itemId,而不是全局标识符id(如果重用具有相同id的组件,则使用id可能会导致难以调试的错误) 此外,为了补充Niklas关于显示/隐藏组件的回答,该框架确实向组件的元素添加了一些CSS,这取决于组件的hideMode。在此处了解有关该酒店的更多信息: 了解更多信息的一个很好的方法是浏览该框架附带的所有示例。在浏览器中打开示例,然后查看代码以了

Niklas对如何选择组件和元素的回答非常好。我要添加的唯一内容是,您可以使用
up()
down()
来选择相对于组件的内容。这样,您应该在组件上使用
itemId
,而不是全局标识符
id
(如果重用具有相同id的组件,则使用
id
可能会导致难以调试的错误)

此外,为了补充Niklas关于显示/隐藏组件的回答,该框架确实向组件的元素添加了一些CSS,这取决于组件的
hideMode
。在此处了解有关该酒店的更多信息:


了解更多信息的一个很好的方法是浏览该框架附带的所有示例。在浏览器中打开示例,然后查看代码以了解如何完成操作。你会发现用这种方式学习比在纸上或网站上阅读更容易。在学习新东西时,没有什么能比经验更好。

尝试自己回答这个问题

既然有,我就把答案放进去。请注意鼠标滚动的注释


这只是目前的一种模式。它需要更清晰、更完整的工作。请随时发表评论,或询问我是否愿意编辑它。

这是一次非常可靠的尝试。然而,它似乎只是在讨论
Ext.ComponentQuery.query
。元素、DOM节点等呢。?此外,可能还需要对布局进行一些清理(我可能稍后会自己编辑此答案)。问题是,您可以使用
Ext.ComponentQuery.query
。如果使用Sencha Touch进行开发,通常您不关心元素和DOM节点,因为您让Sencha Touch使用DOM进行开发。当你编辑你的问题时,请告诉我。你的回答方向是正确的,但我也想知道相关的Ext.元素、DOM节点以及它们之间的区别。如果,就像你说的,我不应该关心这些,那么至少我必须知道如何达到它们,依赖性是什么,等等。好吧,你现在至少知道如何达到它们,但即使这不是真的必要
Ext.Element
与Sencha Touch相关,DOM节点基本上可以是浏览器中的一切。有用于链接、文本、控件等的DOM对象。最后,每个Sencha Touch元素都将转换为纯HTML,因为浏览器/设备只知道如何显示HTML。例如,
textview
将类似于
,有一些特定的Sencha Touch类用于典型设计,并打包到一些div中用于布局。非常好的解释我认为你的问题太广泛了,如果你有一个关于功能的特定问题,或者你从文档中不了解的东西,但你基本上只是问“整个核心是如何工作的”。你似乎没有花足够的时间阅读文档。这个问题可能会变成一个社区维基。文档中缺少使用示例,也没有清楚地区分每个对象。也许你是对的。也许把它分成5个问题是有意义的:每个数字一个问题?或者每个物体一个问题?没有足够的答案。我希望悬赏案能推迟到更全面的答复。我将开始一个新的,一旦我获得更多的声誉点!你忘了:[nextNode([selector])]()/[previousNode([selector])(),我已经更正并更新了你的表格。请查看@sra,我应该如何奖励奖金?我希望它能推迟。你不能把奖金奖励给你自己。谢谢你的“核心”链接——非常有用!是的,我不知道为什么那个很难找到,而且广告也不好。。。它有丰富的信息,是的。我只是希望它不会太过时。在我阅读的过程中,如果发现拼写错误/错误,我看不到一个清晰的方法来报告/评论它们。
Ext.ComponentQuery.query("*")                   // get all
Ext.ComponentQuery.query("button")              // all buttons
Ext.ComponentQuery.query("#myid")               // all controls / components myid
Ext.ComponentQuery.query("#myid", rootelement)  // all controls / components myid with rootelement
Ext.ComponentQuery.query("#myid,button")        // all buttons or controls / components myid
Ext.ComponentQuery.query("#viewId")[0].add(new Ext.Button({ text: 'test'}));
Ext.ComponentQuery.query("button").forEach(function(button){ button.hide(); })      // hide all buttons
var dom = Ext.ComponentQuery.query("button")[0].element.dom // Getting the DOM from the first button
var dom2 = component.element.dom                            // does also work as long as component is a valid sencha touch component
<div id="myDiv">My content</div>
var el = document.getElementById('myDiv')
var el = Ext.get('myDiv')
var myComponent = Ext.create('Ext.Component', { html: 'my component' });
var el = myComponent.getEl();