Всем привет,как мне перехватить события консоли вида info,log,warn,error вот таким способом
function takeOverConsole(){
var console = window.console;
if (!console) return
function intercept(method){
var original = console[method];
console[method] = function(){
// do sneaky stuff
if (original.apply){
// Do this for normal browsers
original.apply(console, arguments)
}else{
// Do this for IE
var message = Array.prototype.slice.apply(arguments).join(' ');
original(message)
}
}
}
var methods = ['log','info', 'warn', 'error'];
for (var i = 0; i < methods.length; i++)
intercept(methods[i])
}
и передать эти события в метод window.test.setLog(obj)
а сам объект должен быть вида
obj = {
type:error
message:'сообщение',
type:warn
message:'сообщение'
и т.д
}
Для IE не поддерживающего Function.prototype.apply()
сообщение будет объединением аргументов в строку, для поддерживающих браузеров - псевдомассив аргументов "arguments".
function takeOverConsole () {
var console = window.console
if (!console) return
function intercept (method) {
var original = console[method]
console[method] = function () {
var message
// do sneaky stuff
if (original.apply) {
// Do this for normal browsers
original.apply(console, arguments)
message = arguments
} else {
// Do this for IE
message = Array.prototype.slice.apply(arguments).join(' ')
original(message)
}
var obj = {
type: method,
message: message
}
// тут доступен obj
alert(obj.type)
}
}
var methods = ['log', 'info', 'warn', 'error']
for (var i = 0; i < methods.length; i++) {
intercept(methods[i])
}
}
takeOverConsole();
window.console.log(123)
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Как сделать так, чтобы при введении 2 чисел в <input id = "h"> каретка перемещалась на следующий инпут <input id = "m">?