前天做一个 像百度的搜索那个样子有下拉的组件。遇上这么一个问题。当方向盘向下按时找到对应的词在按回车进行搜索,在谷歌下却没有触发我的事件
例如:
function evtClick(e){
alert('click me!');
}
window.onload = function (){
var btn=document.getElementById('btn');
btn.click();/*(1)*/
}
<a id="btn" onclick="evtClick(event)"> 测试</a>
结果:
ie下可以执行。而谷歌却无法执行。
所以我们对(1)
进行改进写法
if(document.all)
{
btn.click();
}else{
var evt = document.createEvent('HTMLEvents');
evt.initEvent('click',true,true);
btn.dispatchEvent(evt);
}
定义和用法
dispatchEvent() 方法给节点分派一个合成事件。
语法:
dispatchEvent(evt)
参数
描述
evt |
必需。要分派的 Event 对象。 |
返回值
如果在事件传播过程中调用了 evt 的 preventDefault() 方法,则返回 false,否则返回 true。
抛出
如果 Event 对象 evt 没有被初始化,或者它的 type 属性为 null 或空串,该方法将抛出异常。
描述
该方法将分派一个合成事件,它由 Document.createEvent() 创建,由 Event 接口或它的某个子接口定义的初始化方法初始化。
调用该方法的节点将成为事件的目标节点,该事件在捕捉阶段中第一次沿着文档树向下传播。如果该事件的 bubbles 属性为 true,那么在事件的目标节点自身处理事件后,它将沿着文档树向上起泡。
分享到:
相关推荐
在IT行业中,尤其是在Web开发领域,有时候我们需要实现特定的功能,比如在本例中,就是通过JavaScript来调用打印机进行标签小票的打印。这个任务通常涉及到与硬件设备的交互,如打印机,以及可能的第三方控件或库。...
标题 "C++调用GOOGLEMAP代码" 涉及到的是在C++程序中集成和使用Google Maps API的技术。Google Maps API是一个强大的工具,允许开发者在他们的应用程序中嵌入地图、路线规划、地理编码(地址转经纬度)等功能。在C++...
标题中的“谷歌离线地图”指的是能够在没有网络连接的情况下仍然可以访问和使用的地图服务。这通常通过预先下载地图数据并在本地存储来实现。这对于那些网络不稳定或者流量有限的环境,如户外探险、远程旅行或移动...
JavaScript是一种运行在浏览器端的脚本语言,常用于实现网页的动态效果和用户交互。在调用Google Maps API时,JavaScript负责处理用户交互、请求API、解析响应并更新页面内容。 3. **Google Maps JavaScript API**:...
6. **处理事件**:若需要监听Flash播放器的事件,如播放结束、暂停等,也需要使用API函数注册事件处理函数。 7. **错误处理**:在调用API时,可能出现各种错误,如找不到API、参数错误等,因此要进行适当的错误处理...
Google Earth提供了一个名为"GEPlugin"的ActiveX控件或NPAPI插件,可以在Web浏览器或其他支持这些插件的环境中运行。 要在Qt中调用Google Earth,你需要以下步骤: 1. **安装Google Earth**: 首先确保系统已经安装...
在普通浏览器中,这个流程通常能顺畅运行,但在Android的Webview环境中,由于权限限制,直接调用摄像头可能不生效。Android应用需要在Manifest.xml文件中声明相应的权限,比如`...
《鹰眼下的淘宝-分布式调用跟踪系统介绍》是一篇深入探讨分布式系统监控与追踪的文章,主要关注于淘宝内部使用的“鹰眼”系统。这篇文章基于作者在ITeye博客上的分享,我们将围绕分布式调用跟踪、系统监控以及相关...
3. **HTML5的Web Messaging API**:另一种可能的解决方案是使用Web Messaging API,通过`postMessage`和`message`事件在不同浏览器窗口或标签页之间传递信息,然后在目标浏览器(如IE)中处理这些消息来启动自身。...
Chrome为了提高安全性,采用了多进程架构,每个标签页、插件等都在独立的进程中运行,这被称为“沙箱”模式。由于OCX插件主要基于Internet Explorer设计,它们通常不适用于这种隔离环境。因此,要使Chrome调用OCX,...
因此,可以改为直接调用`drawChart`函数,或者将`google.charts.load`的回调直接放入`<script>`标签中。 6. **调试与优化:** 在本地运行后,你可能需要根据实际情况调整图表选项,或者自定义CSS以满足特定的需求。...
标题 "在Electron中运行Chrome应用程序" 描述的是如何利用Electron框架来构建桌面应用,这些应用能够基于Google Chrome浏览器的内核运行。Electron是一个开源框架,它允许开发者使用Web技术(如HTML、CSS和...
1. **设置环境**:在Android Studio中,需要启用NDK支持,并创建一个jni目录,此目录下的源码会被编译为动态链接库(.so文件)。 2. **编写JNI接口**:在Java代码中,使用`native`关键字声明方法,这些方法将在C++...
这段JavaScript代码将在V8环境中运行,并调用我们在Python中定义的`python_function`。 **使用V8Py实现RESTful API** 结合标签“Python开发-RESTful API 库”,我们可以想象一个场景,其中Python使用Flask或Django...
然而,不同的浏览器可能对视频格式的支持不同,这可能会导致在某些浏览器上,比如Safari,无法正常播放视频。本篇将深入探讨这个问题,并提供解决方案。 首先,我们需要了解Safari浏览器对视频格式的支持。Safari...
2. **跨浏览器兼容性** - 由于历史原因,许多网站和应用使用了IE特有的技术,如ActiveX控件,导致在其他浏览器上无法正常运行。IE Tab解决了这个问题,提高了兼容性。 3. **Chromium内核** - Chrome基于开源项目...
为了增加灵活性,标签布局可能支持在运行时动态添加或移除标签。这可以通过调用FlowLayout的`addView()`和`removeView()`方法实现。同时,可能还提供了刷新布局的方法,以便在数据改变时更新界面。 7. **性能优化*...
Google自动提示功能的核心是AJAX(Asynchronous JavaScript and XML),这是一种创建动态网页的技术,允许在不刷新整个页面的情况下与服务器交换数据并更新部分网页内容。在本例中,当用户在搜索框中输入时,...
这个库通常包含一系列预定义的JSP标签,允许开发者通过XML-like语法在页面上动态渲染和控制Google地图。 【描述】这个压缩包文件“基于java的Google地图JSP标签库.zip”很可能包含了实现这一功能所需的全部源代码、...
在IT领域,C++与JavaScript的交互是一种常见的技术需求,特别是在构建混合应用程序或者需要在C++原生应用中嵌入动态脚本能力时。本文将深入探讨如何通过C++调用JavaScript代码,以及如何在C++创建的窗口环境中运行...