小编pau*_*aul的帖子

如何使用.on()绑定jQuery UI自动完成?

live()方法回答了这个问题,但是从jQuery 1.7开始不推荐使用live()方法,并用.on()方法替换,这个答案对on()不起作用.

以下是之前的答案: 使用.live()绑定jQuery UI自动完成

任何人都知道如何用on()做同样的事情

如果您将语法更改为类似的

$(document).on("keydown.autocomplete",[selector],function(){...});
Run Code Online (Sandbox Code Playgroud)

$([selector]).live("keydown.autocomplete",function(){...});
Run Code Online (Sandbox Code Playgroud)

它有点工作,但它以一种奇怪的方式与内部自动完成事件交互.使用live(),如果使用select事件并访问event.target,它将为您提供input元素的id.如果你使用on(),它会给你下拉菜单"ui-active-menuitem"的id.像这样的东西:

$( ".selector" ).autocomplete({
   select: function(event, ui) { 
     console.log(event.target.id);
 }
});
Run Code Online (Sandbox Code Playgroud)

但是 - 如果您使用"开放"事件,它将为您提供我正在寻找的ID - 只是不在正确的时间(我选择它后需要它).此时,我正在使用一种解决方法,即在open事件函数中获取input元素的ID,将其存储在隐藏字段中,然后在我需要的select方法中访问它.

jquery jquery-ui-autocomplete

19
推荐指数
2
解决办法
2万
查看次数

为什么Chrome会重定向到iframe onload的网址?

我有一个带有iframe的div,而iframe从另一个网站(跨域)加载一个页面.当页面加载到Firefox时,它工作正常,并显示div中的iframe页面.但是,在Chrome中,它会在页面加载时自动重定向到iframe网址.知道为什么会这样,如果有可能做我想在Chrome中做的事情吗?

注意:我不是要尝试进行任何跨域通信,只是想让用户从我网站上的页面中访问其他网站.这也发生在Safari中,所以也许这是一个webkit的事情.

iframe webkit google-chrome cross-domain

5
推荐指数
1
解决办法
3684
查看次数