2014-11-04 62 views
0

我正在为我正在使用的站点使用Polymer框架,并且我想将jQuery的keypress()绑定到Polymer <paper-input>元素。我试图直接结合它的元素,通过将jQuery Keypress()绑定到Polymer输入

HTML

<paper-input id="whatever" label="Example"></paper-input> 

的Javascript

$("#whatever").keypress(function(){ 
    console.log("It worked!"); 
}); 

我所知道的是聚合物使用阴影DOM元素的事实,所以该<input>标签是从实际<paper-input>标签独立。

一种方法是类似于$("#whatever").children(),并以某种方式筛选<input>标记,但我觉得这不是聚合物的最佳实践。

无论哪种方式,我需要的是按键事件绑定到输入某种方式。

+0

的jsfiddle请 – myfunkyside 2014-11-04 23:14:52

+0

我不知道的jsfiddle支持影子DOM /聚合物不是吗? – Aeolingamenfel 2014-11-04 23:36:39

+0

您可以在左边的菜单链接到外部资源。 (必须承认我从未使用聚合物,但我认为它可以像任何HTML/JS库一样工作) – myfunkyside 2014-11-05 01:59:54

回答

0

有点晚了,但我并曾与Web组件测试仪相同的问题。原来聚合物现在有一个整洁的分量铁试验佣工其中包含的脚本模拟interactions.js

使用keyEventOn像这样:

的Javascript

MockInteractions.keyEventOn(
    Polymer.dom(myEl.root).querySelector('#filter-input'), 'keypress', 13); 

烧制的按键事件与键码13到纸张输入ID为“过滤器输入”