我试图在一些 Sencha 元素中从 JQuery 捕获 .keypress 事件,但似乎 Sencha 以某种方式将它们隐藏到 JQuery 中。
我将展示一段代码,它更简单,但有同样的问题:
Ext.onReady(function(){
$("#jquery").click(function() {
alert('Handler for click called.');
});
var contextMenu = new Ext.menu.Menu({
renderTo: document.body,
width: 150,
floating: false,
plain: true,
items: [{
text: 'button1',
id: 'jquery'
},{
text: 'button2'
}]
});
});
</script>
</head>
<body>
<div id="test"> I am a div </div>
</body>
我的目标是,当我单击 button1 时,会显示警报弹出窗口,但不会发生。但是,如果我将 JQuery 代码更改为:
$("#test").click(function() {
alert('Handler for click called.');
});
然后我点击弹出的 div 内容,因此该库已正确加载。
我认为这一定与 Sencha 如何创建我检查过的 html 有关,我可以看到 button1 如下所示:
<a id="jquery" class="x-menu-item" hidefocus="true" unselectable="on" href="#"><img alt="" src="data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" class="x-menu-item-icon " id="ext-gen7"><span class="x-menu-item-text" id="ext-gen8">button1</span></a>
但是我仍然无法在我想要的地方使用 JQuery。使用 JQuery 选择器访问 sencha 元素的任何想法或解决方案?