我正在使用Polymer框架来处理我正在处理的网站,我想将jQuery的keypress()
绑定到Polymer <paper-input>
元素。我尝试通过
HTML
<paper-input id="whatever" label="Example"></paper-input>
的Javascript
$("#whatever").keypress(function(){
console.log("It worked!");
});
我知道Polymer使用shadow DOM元素,因此<input>
标记与实际<paper-input>
标记分开。
一种方法类似于$("#whatever").children()
,并以某种方式过滤<input>
标签,但我觉得这不是Polymer的最佳做法。
不管怎样,我需要一些方法将keypress事件绑定到输入。
答案 0 :(得分:0)
有点晚了,但我确实遇到了与Web组件测试人员相同的问题。事实证明,Polymer现在有一个整洁的组件铁测试助手,其中包含一个脚本mock-interactions.js
像这样使用keyEventOn:
<强>的Javascript 强>
MockInteractions.keyEventOn(
Polymer.dom(myEl.root).querySelector('#filter-input'), 'keypress', 13);
用键码13向带有id'filter-input'
的纸张输入发出按键事件