`
qalong
  • 浏览: 8476 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

javascript中download关键字的方法名调用问题

阅读更多
今天在写代码的时候发现一个很奇怪的现象,代码如下:

这个demo在ie8下正常,但是在chrome和ff都有问题

<html>

<head>
	
	<script type="text/javascript">
	function download(){
		alert("123");
	}
	</script>

	</head>
<body>

	<a href="javascript:void(0);" onclick="javascript:download();">Test</a>

	</body>
</html>


查阅了一下资料发现了答案:
http://stackoverflow.com/questions/7852237/cant-use-download-as-a-function-name-in-javascript


download是html5中新增的一个属性,所以在现代浏览器上都会解析成属性。这个属性是一个事件定义,并且优先于js中的方法(window.download)。所以点调用download()方法的时候,在现代浏览器中会触发element.download();而不是window.download。所以在ie8这样的老古董下面没有element.download()会直接调用window.download();

分享到:
评论

相关推荐

    深入理解JavaScript异步

    JavaScript异步编程是Web开发中的核心概念,尤其在构建高性能、响应式的网页应用时不可或缺。深入理解这一主题,对于任何JavaScript开发者来说都是至关重要的。在这个教程中,我们将探索JavaScript异步处理的各个...

    【JavaScript源代码】vue 封装导出Excel数据的公共函数的方法.docx

    为了在具体的应用场景中使用封装好的导出功能,我们需要在组件的 methods 中定义一个处理导出的方法,并调用 store 中定义的 `downloadData` 方法。 ```javascript methods: { handleExport(formData) { this....

    js 多种方法

    该代码片段展示了如何使用JavaScript获取页面中指定元素的标签名。 #### 实现方式 1. **HTML结构**: ```html &lt;h1 id="myHeader"&gt;Click to see what I am ``` 2. **JavaScript逻辑**: 使用`document....

    js事件监听机制(事件捕获)总结

    在JavaScript中,可以通过在addEventListener方法中设置第三个参数为true来指定捕获阶段。 冒泡事件流提供了在事件到达目标元素之前对其进行拦截的机会,这可以通过调用事件对象的stopPropagation方法来实现。而在...

    ebook download

    在这个场景中,我们关注的是一个名为 "JavaScript参考手册.chm" 的文件,这显然是一本关于JavaScript语言的参考指南。CHM文件是微软的 Compiled HTML Help 文件,是一种常见的电子书格式,它包含HTML页面、图像和...

    AjaxDemo.zip

    3. **异步控制器方法**:在 `HomeController.cs` 中,控制器方法可能会使用 `async` 和 `await` 关键字来处理异步操作。 4. **JSON 数据交换**:服务器返回的数据通常格式化为 JSON,便于 JavaScript 解析和操作。 ...

    es6新特性:一篇就够了

    对象字面量允许直接定义方法和计算属性名。 ```javascript let key = 'name'; let obj = { [key]: 'Alice', sayHello: function() { console.log('Hello!'); } }; ``` 10. **Set与Map** Set 对象存储不...

    自动更新作用

    3. **方法**:虽然代码中没有完全展示,但可以推测`CLASS_AUTOUPDATE`类可能包含一些方法,例如`refresh()`,用于检查更新,以及其他可能的方法如`startUpdate()`,`downloadUpdate()`等,用于执行实际的更新操作。...

    javasript资料

    JavaScript,通常缩写为JS,是...以上内容仅涵盖了JavaScript的基本知识点,实际应用中还有更多高级特性和最佳实践,如Promise链式调用、错误处理、性能调优、TypeScript集成等,需要开发者不断学习和实践以提升技能。

    通过JS屏蔽某地区(城市)访问网站

    标题中的“通过JS屏蔽某地区(城市)访问网站”指的是使用JavaScript编程语言来实现一个功能,使得特定城市的用户无法访问你的网站。这个功能通常用于商业策略,比如避免竞争对手或者特定地区的用户获取敏感信息或者...

    动态网页爬取.pptx

    * 说明:JavaScript脚本函数在左侧XHR的Name中,Request URL在Headers中,Return Data在Response(Preview中也有,可能在Response的下面)。 使用Selenium爬取动态页面: 1. 安装最新版Google Chrome。 2. 下载...

    2021-2022计算机二级等级考试试题及答案No.17027.docx

    9. **方法调用**:在类定义中,可以在一个方法内部调用另一个方法,例如在b的方法中可以调用a()。 10. **最广泛应用的互联网服务**:WWW(World Wide Web)服务是目前Internet上应用最广泛的服务,它提供了网页浏览...

    Microsoft.JScript(引用)

    2. 使用引用:在JScript代码中,使用`new`关键字实例化引用的类,或者直接调用静态方法。例如,引用System.IO命名空间后,可以使用`System.IO.File`类进行文件操作。 三、JScript与.NET Framework的交互 JScript的...

    GaodeMap.zip

    这需要调用`AMapNaviVoice`的相关方法,实现文本转语音的播放。 六、POI搜索 POI搜索允许用户在地图上查找兴趣点,如餐馆、酒店等。高德地图API提供了关键字搜索、周边搜索等多种方式,返回结果包含地点名称、地址...

    ie、360、火狐等浏览器用js导出Excel

    创建一个统一的函数,根据检测到的浏览器类型,调用相应的导出方法。在实际开发中,可能还需要考虑其他浏览器,如Edge,它虽然基于Chromium内核,但在某些版本中仍保留了部分IE的特性。 6. **示例代码**: 这里...

    LotusDomino学习笔记.doc

    - **检索问题**: 包括全文搜索、关键字搜索等,通常通过构建索引和使用查询语言(如SQL)来实现。 #### 28. 如何使用Notes与关系数据库进行信息交互? - **交互方式**: 通过ODBC或JDBC连接到关系数据库,然后使用...

    Understand_5.0.960_windows

    1. **代码导航**:通过关键字搜索,开发者可以迅速定位到代码中的特定位置,节省了在大量代码中寻找所需内容的时间。 2. **依赖关系图**:提供图形化的依赖关系展示,帮助理解不同模块或类之间的调用关系,便于理清...

Global site tag (gtag.js) - Google Analytics