Ced*_*ach 3 html javascript internet-explorer
我写了一些JavaScript来在用户滚动时移动广告横幅.但是,除了Internet Explorer之外,它的每个浏览器都能正常工作......好像我的JS甚至没有开始......我正在使用最新的IE9.
我是如何调用它的:
<html>
<head>
<script src="./js/move-it.js" type="text/javascript"></script>
</head>
<body>
...
<div id="bird">
<iframe ...>...</iframe>
</div>
<script type="text/javascript">
start(); // method in move-it.js
</script>
</body>
Run Code Online (Sandbox Code Playgroud)
顺便问一下,谁能告诉我如何防止横幅以一种不错的方式撞到我的页脚?我试图在下方广告上面放置一个div作为"塞子"并使用它的"offset-top"属性,但我想它总是给我一个太小的值,即它一直在崩溃... -.-
干杯
我设法让它现在起作用.问题是IE不允许const在JavaScript中使用修饰符.我只是将它们更改为var并且工作得很好.
IE,所有版本都不能容忍 PHP 程序员犯的常见错误。以下是 IE 不接受的 Javascript 语法列表,适用于所有函数,包括 AJAX:
(这些 IE Javascript 语法错误不是 Opera、Chrome 和 Firefox 中的错误。)
您不能在函数声明参数中设置默认变量值function thisFunction(something='x'){ thingy.here;}是不允许的,并且在thisFunction()调用时将读取为未声明的函数。
将对象作为函数参数传递可能会产生意想不到的结果:function(someObject)根据上下文可能会或可能不会起作用。
未声明的变量停止脚本
event.preventDefault(); 不能在被调用函数内部调用,并且会停止脚本
event.preventDefault();必须首先声明,在所有其他函数之前的事件引用中......在其他浏览器上不是这样。所以IE必须默认异步操作...
当 PHP 程序员第一次学习享受 Javascript 的同步特性作为语言中的第 1 课时,可能不会预料到。当直接放入链接的标签时,此示例在 'a' 标签中不起作用(不起作用)
onclick="function() {
if(typeof someFunction === 'function') {
event.preventDefault();
someFunction('anyParameter');
};"
Run Code Online (Sandbox Code Playgroud)
当您在未实现或声明函数 someFunction() 的页面上使用相同的代码时。真是浪费时间!
onclick='clickChild(this);'在 IE 上不起作用...我不知道为什么。它实际上会停止一个包含的链接,什么都不会发生。似乎与 preventDefault 的上述行为相矛盾,后者仅用作事件引用中的第一个函数,如果不首先调用,则将遵循包含链接。所以在 IE 中逻辑不一致。---截至今天,2017 年 1 月 21 日,在今天的 Google Chrome 更新中,上述功能在 Chrome 中也不起作用。
在表单中,'button' 标签不会正确返回表单提交的值。这可能会在新的 IE 版本中修复,也可能不会。对于我当前的项目:yad1.org,多语言提交按钮名称需要按钮标签,所有语言都需要相同的值。
结论: IE 应该从 Windows 中删除并永远被遗忘。
真正浪费时间调试。IE 需要与程序员友好的 Javascript 世界取得联系。
| 归档时间: |
|
| 查看次数: |
30553 次 |
| 最近记录: |