IE8/9的console之坑】的更多相关文章

这几天遇到个深坑,在改别人代码时,发现ajax在ie8下请求不成功.清理了缓存后,可以请求成功!(清理缓存只是表象而已,后文说原因) 后来慢慢看代码,发现ajax成功回调了!在success回调里,我发现了大量console语句,于是开始怀疑console这个对象! 查到资料,发现ie8下只有在打开控制台的情况下,console才会被注入! 所以,建议使用console时加上下面这段代码: if (window.console){ // Add console commands here. }…
解决IE8不支持console,代码中包含console时会报错. //解决 IE8 不支持console window.console = window.console || (function () { var c = {}; c.log = c.warn = c.debug = c.info = c.error = c.time = c.dir = c.profile = c.clear = c.exception = c.trace = c.assert = function () {…
在开发的过程中由于调试的原因,在代码中加入console.info("xxxx"),而未进行删除 在IE8下测试该代码所在的页面报错,如下: 需要注意的是,使用console对象查看对象信息,在IE8浏览器下未打开开发人员工具(F12)的情况下 会报'console'未定义错误. 解决办法:1.打开开发人员调试工具(F12)                    2.注释掉该代码 3.或者加入如下代码 window.console = window.console || (functi…
$(document).on('mouseover mouseout','ul li',function(){ if (event.type == 'mouseover') {           console.log($(this));      }else if(event.type == 'mouseout'){           console.log($(this));      } }); 上述代码在IE8下会console多个结果,在代码末端添加return false可解决问…
IE从IE8+才支持console物件,但如上图所示,网页明明是IE9标准模式,为什么IE9却说console物件不存在? 但进行侦错,console.log()却又正常! 原因: IE8/IE9要先按F12开启IE Dev Tools才能存取console物件啦…
问题描述 经测试发现问题只出现在: 1.原生IE8(其他版本IE模拟出的IE8无此问题) 2.从打开IE8没有开启过F12(曾经开启过又关闭的无此问题) IE8报错“由于出现错误80020101而导致此项操作无法完成”,进而导致当前页面无法显示,同时整站所有页面都无法加载.…
摘自:http://blog.csdn.net/cdnight/article/details/51094464 ie9下面,很奇怪的是有console的代码有时候执行不下去,不过当f12打开控制台的时候代码可以继续执行下去. 一直以来,有个奇怪胡现象缠着我挥之不去,console.log常因不明原因在IE9出现SCRIPT5009: ‘console’ is undefined (console未被定义) 错误! 我当然知道IE从IE8+才支持console物件,但如上图所示,网页明明是IE9…
我们很多情况下会使用console.log() 对代码调试.在chrome下和Firefox下都不会有太大问题,但是在最近我在IE8 下调试时使用了console.log(),就出现一些问题.在IE8中要想使用它调试代码必须要先开启F12,如果不开启F12,在浏览器的下方就会显示报错.那是因为IE8会将console.log()默认处理为错误逻辑,但是在F12下处理为控制台输出.比较有意思的是,但我们将F12关闭,刷新页面,IE8 仍然将console.log()处理为控制台输出,即打开过一次F…
还用alert 吗?看看console.info吧,代码的测试平台:ie9, firefox12 ​1. [代码][JavaScript]代码<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title here</title>&l…
在JavaScript中,提取子字符串主要是通过 Slice.Substring.Substr 三个方法之一. // slice // 语法: string.slice(beginSlice [, endSlice]) "Good news, everyone!".slice(5, 9); // 'news' // substring // 语法: string.substring(indexA [, indexB]) "Good news, everyone!".…
一.从function JQLite(element)函数开始. function JQLite(element) { if (element instanceof JQLite) { //情况1 return element; } var argIsString; if (isString(element)) { //情况2 element = trim(element); //先去掉两头的空格.制表等字符 argIsString = true; } if (!(this instanceof…
学习资料 http://www.sikiedu.com/course/51/task/891/show https://www.codeproject.com/Articles/26123/NHibernate-and-MySQL-A-simple-example Visual Studio新建一个C#控制台程序,设为启动项,在项目属性中设置目标框架为.NET Framework4.5. 添加两个DLL引用:MySQL.Data.dll和NHibernate.dll.后者在NHibernate官…
Overview 在前几章,我们已经对委托有了一个完整的了解了,本章将会对事件进行一下介绍: 相对于委托,事件再是我们更加频繁的接触的,比如 鼠标的click 事件,键盘的 keydown 事件等等. 事件的特点: 只能进行 += 或者 -= 操作 只能在,定义事件的类的内部调用事件,在其他类中不能调用 大家还记不记得学面向对象的时候,对属性是怎么描述的 对字段的封装,为了保护字段! 那么,事件之于委托,也是同样的目的, 对委托的封装,为了保护委托 . 我们在写代码的时候,一直会遵循这么一个规范…
1.将时间戳转成日期格式: //第一种 function getLocalTime(nS) { return new Date(parseInt(nS) * 1000).toLocaleString().replace(/:\d{1,2}$/,' '); } alert(getLocalTime(1293072805)); //结果是2010年12月23日 10:53 //第二种 function getLocalTime(nS) { return new Date(parseInt(nS) *…
学习资料 http://www.sikiedu.com/course/51/task/891/show https://www.codeproject.com/Articles/26123/NHibernate-and-MySQL-A-simple-example Visual Studio新建一个C#控制台程序,设为启动项,在项目属性中设置目标框架为.NET Framework4.5. 添加两个DLL引用:MySQL.Data.dll和NHibernate.dll.后者在NHibernate官…
一.main.js import Vue from 'vue' import App from './App' import router from './router' import Vuex from 'vuex' import store from './store' import axios from 'axios' import VueAwesomeSwiper from 'vue-awesome-swiper' import 'swiper/dist/css/swiper.css'…
最近业务部门反映我们商城的兼容性不是很好,尤其是在IE浏览器上,经过调研,我们决定对IE9及以上版本的IE内核浏览器进行主流程测试,发现有哪些功能在IE9上不兼容 一.CSS兼容性 如下图所示 使用了Button标签,在IE浏览器或者是IE内核的浏览器按钮文字却没有显示.F12看下代码: 很明显,在IE浏览器少了个css属性:line-height:33px:加上这个属性,在IE浏览器上就可以显示文字了. Tip:今后如果有开发人员再使用button这个标签,记得加上line-height这个属…
在最新的ES7(ES2017)中提出的前端异步特性:async.await. 什么是async.await? async顾名思义是"异步"的意思,async用于声明一个函数是异步的.而await从字面意思上是"等待"的意思,就是用于等待异步完成.并且await只能在async函数中使用 通常async.await都是跟随Promise一起使用的.为什么这么说呢?因为async返回的都是一个Promise对象同时async适用于任何类型的函数上.这样await得到的就…
上DEMO a = {key1: [1, 2], 'key2': {'key4': '11'}, 'key3': [1, 2]} console.info(1,a) a.key2.key4 = '22' console.info(2,a) 通过浏览器打开DEMO,看浏览器的终端,发现 第一次console竟然和第二次的console的值一样,都是已修改后的值,22... 研究了很久后,发现问题出在浏览器的终端. 由于a的key2是一个对象,所以在浏览器输出到终端的时候,没有把key2的value…
在开发的过程中因为调试的原因,在代码中增加console.info("xxxx"),而未进行删除 在IE8下測试该代码所在的页面报错,例如以下: 须要注意的是,使用console对象查看对象信息,在IE8浏览器下未打开开发者工具(F12)的情况下 会报'console'没有定义错误. 解决的方法:1.打开开发者调试工具(F12)                    2.凝视掉该代码 3.或者增加例如以下代码 window.console = window.console || (fu…
今天发现IE8在开启过控制台后,console.log虽然可用,也是确实是一个函数,但是对其执行typeof操作返回的确是"object" 原生IE8:…
在开发的过程中由于调试的原因,在代码中加入console.info("xxxx"),而未进行删除 在IE8下测试该代码所在的页面报错,如下: 需要注意的是,使用console对象查看对象信息,在IE8浏览器下未打开开发人员工具(F12)的情况下 会报'console'未定义错误. 解决办法:1.打开开发人员调试工具(F12)                    2.注释掉该代码 3.或者加入如下代码 window.console = window.console || (functi…
为了 解决这个坑~ 已经 累傻了.. 周末再 写吧..…
在项目中,由于要兼容到IE8,我使用1.2.8版本的angularJS.这个版本是支持自定义指令的.我打算使用自定义指令将顶部的header从其他页面分离.也就是实现在需要header的页面只用在<body>后面加上<header></header>这个HTML标签就可以了,这样还能实现页面的语义化,而且也能在IE8中实现HTML5标签.以后很多部分都可以这一写,如搜索则可以变成<serach></serach>这样.但是在写好了后,才发现只有I…
这特么就尴尬了,说好的Vue支持IE8及以下的呢,引入jquery,测试IE个浏览器,IE9仍然显示不正常, 然而命令行测试Vue仍然存在, 数据回不来!数据回不来!数据回不来! 好吧  肉包子打狗$.ajax发出请求一去不复返........... 特么jquery.1.11.1.min.js太高?为啥jquery.1.8.1.min.js那个就可以? 百度咯:IE9 ajax发布出去 好嘛,一堆说跨域的问题,然而接口并没有限制域名啊 既然network里根本就没有发出去,那就是浏览器问题咯…
近来有一需求,播放声音,我在高端浏览器实现了html5 audio标签.低端浏览器实现了flash兼容.但是在调试ie8以下的浏览器发现js死活调不了flash里的addCallback的方法,总报错:Object doesn't support this property or method.在stackoverflow上找的解决方法有: 1.延时调用容器方法 2.改变创建节点顺序法:先创建一个div,append到dom树,再创建flash节点append到div里 折腾了大半天,以上都试过…
背景 我们的项目通过重写console对象上的方法实现日志上报的功能,截取代码片段如下: Class Logger() { debug() {}, info() {}, warn() {}, ... } const logger = new Logger(); logger.hook = function(target) { ['debug','info','warn','error'].forEach(key => { const old = target[key]; target[key]…
js在操作DOM中存在着许多跨浏览器方面的坑,本文花了我将近一周的时间整理,我将根据实例整理那些大大小小的“坑”. DOM的工作模式是:先加载文档的静态内容.再以动态方式对它们进行刷新,动态刷新不影响文档的静态内容. PS:IE 中的所有 DOM 对象都是以 COM 对象的形式实现的,这意味着 IE 中的 DOM可能会和其他浏览器有一定的差异. Node 接口 特性/方法 类型/返回类型 说 明 nodeName String 节点的名字:根据节点的类型而定义 nodeValue String…
angular中指令被用的最多的除了ng-repeat之外就非他莫属了吧,由于各种业务的需求,我们经常需要去写一些继承ngModel的指令,来满足各种奇葩需求,最多的莫过于表单的验证啦,另外你在封装一些jquery插件的时候,也是需要继承ngModel的,最典型的莫过于 datepicker.fileUpload等等. 但是ngModel本身其实有很多坑,在这里分享给大家,如果大家又遇到其他问题,欢迎补充: 首先我们要知道一些概念的东西,这里我就不占篇幅了,不了解的可以先去看看这篇文章: htt…
默认下载了最新版的socket.io,版本号是1.7.2,对IE8的支持不好,反正在IE8下收发消息都不行.在网上查了很多资料,都解决不了IE8的问题,崩溃. 最后用了一个大家比较认可的版本1.0.6,可以支持IE8: 卸载socket.io npm uninstall socket.io 安装1.0.6版本的socket.io npm install socket.io@1.0.6 后面的一些版本没有一一的去试,下了一个1.3.7版本的,还是可以支持收发消息的,只是发现IE8在关闭窗口时,无法…