Skip to content

Commit fc6a4fd

Browse files
committed
bugfix textarea debug error
1 parent d51ea84 commit fc6a4fd

File tree

3 files changed

+97
-79
lines changed

3 files changed

+97
-79
lines changed

debug.js

Lines changed: 48 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -8,29 +8,11 @@ var console = global.console
88
var doc = global.document
99
var names = []
1010
var skips = []
11+
var debugElement
1112

1213
init()
1314

1415
exports.prefix = ''
15-
16-
exports.log = function(namespace, args, color) {
17-
var curr = +new Date
18-
var ms = curr - (prev || curr)
19-
prev = curr
20-
21-
var label = exports.prefix + namespace
22-
var main = '%c' + label + '%c'
23-
var arr = [null, color, inherit]
24-
for (var i = 0; i < args.length; i++) {
25-
arr.push(args[i])
26-
main += ' %o'
27-
}
28-
arr.push(color)
29-
main += '%c +' + ms + 'ms'
30-
arr[0] = main
31-
console.debug.apply(console, arr)
32-
}
33-
3416
exports.init = init
3517

3618
function Debug(namespace) {
@@ -46,27 +28,9 @@ function init(key) {
4628
var res = reg.exec(location.href)
4729
if (res) {
4830
enable(res[1])
49-
var elem = doc.createElement('textarea')
50-
elem.style.cssText = 'width:100%;height:300px;overflow:auto;line-height:1.4;background:#333;color:#fff;font:16px Consolas;border:none'
51-
var box = doc.body || doc.documentElement
52-
box.insertBefore(elem, box.firstChild)
53-
exports.log = function(namespace, arr, color) {
54-
var ret = ['[' + namespace + ']']
55-
var len = arr.length
56-
for (var i = 0; i < len; i++) {
57-
var val = arr[i]
58-
try {
59-
val = JSON.stringify(val, 0, 4)
60-
} catch (e) {
61-
val += ''
62-
}
63-
ret.push(val)
64-
}
65-
elem.value += ret.join(' ') + '\n'
66-
elem.scrollTop = elem.scrollHeight
67-
}
68-
31+
exports.log = elementLog
6932
} else if (global.localStorage && console) {
33+
exports.log = consoleLog
7034
try {
7135
enable(localStorage[key])
7236
} catch (ignore) {}
@@ -103,3 +67,48 @@ function enabled(name) {
10367
function getColor() {
10468
return colors[colorIndex++ % colors.length]
10569
}
70+
71+
function elementLog(namespace, args, color) {
72+
debugElement = debugElement || initDebugElement()
73+
var items = ['[' + namespace + ']']
74+
var len = args.length
75+
76+
for (var i = 0; i < len; i++) {
77+
var val = args[i]
78+
try {
79+
val = JSON.stringify(val, 0, 4)
80+
} catch (e) {
81+
val += ''
82+
}
83+
items.push(val)
84+
}
85+
86+
debugElement.value += items.join(' ') + '\n'
87+
debugElement.scrollTop = debugElement.scrollHeight
88+
}
89+
90+
function initDebugElement() {
91+
var elem = doc.createElement('textarea')
92+
elem.style.cssText = 'z-index:999;width:100%;height:300px;overflow:auto;line-height:1.4;background:#333;color:#fff;font:16px Consolas;border:none;'
93+
var box = doc.body || doc.documentElement
94+
box.insertBefore(elem, box.firstChild)
95+
return elem
96+
}
97+
98+
function consoleLog(namespace, args, color) {
99+
var curr = +new Date
100+
var ms = curr - (prev || curr)
101+
prev = curr
102+
103+
var label = exports.prefix + namespace
104+
var main = '%c' + label + '%c'
105+
var arr = [null, color, inherit]
106+
for (var i = 0; i < args.length; i++) {
107+
arr.push(args[i])
108+
main += ' %o'
109+
}
110+
arr.push(color)
111+
main += '%c +' + ms + 'ms'
112+
arr[0] = main
113+
console.debug.apply(console, arr)
114+
}

dist/debug.js

Lines changed: 48 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -13,29 +13,11 @@ var console = global.console
1313
var doc = global.document
1414
var names = []
1515
var skips = []
16+
var debugElement
1617

1718
init()
1819

1920
exports.prefix = ''
20-
21-
exports.log = function(namespace, args, color) {
22-
var curr = +new Date
23-
var ms = curr - (prev || curr)
24-
prev = curr
25-
26-
var label = exports.prefix + namespace
27-
var main = '%c' + label + '%c'
28-
var arr = [null, color, inherit]
29-
for (var i = 0; i < args.length; i++) {
30-
arr.push(args[i])
31-
main += ' %o'
32-
}
33-
arr.push(color)
34-
main += '%c +' + ms + 'ms'
35-
arr[0] = main
36-
console.debug.apply(console, arr)
37-
}
38-
3921
exports.init = init
4022

4123
function Debug(namespace) {
@@ -51,27 +33,9 @@ function init(key) {
5133
var res = reg.exec(location.href)
5234
if (res) {
5335
enable(res[1])
54-
var elem = doc.createElement('textarea')
55-
elem.style.cssText = 'width:100%;height:300px;overflow:auto;line-height:1.4;background:#333;color:#fff;font:16px Consolas;border:none'
56-
var box = doc.body || doc.documentElement
57-
box.insertBefore(elem, box.firstChild)
58-
exports.log = function(namespace, arr, color) {
59-
var ret = ['[' + namespace + ']']
60-
var len = arr.length
61-
for (var i = 0; i < len; i++) {
62-
var val = arr[i]
63-
try {
64-
val = JSON.stringify(val, 0, 4)
65-
} catch (e) {
66-
val += ''
67-
}
68-
ret.push(val)
69-
}
70-
elem.value += ret.join(' ') + '\n'
71-
elem.scrollTop = elem.scrollHeight
72-
}
73-
36+
exports.log = elementLog
7437
} else if (global.localStorage && console) {
38+
exports.log = consoleLog
7539
try {
7640
enable(localStorage[key])
7741
} catch (ignore) {}
@@ -109,6 +73,51 @@ function getColor() {
10973
return colors[colorIndex++ % colors.length]
11074
}
11175

76+
function elementLog(namespace, args, color) {
77+
debugElement = debugElement || initDebugElement()
78+
var items = ['[' + namespace + ']']
79+
var len = args.length
80+
81+
for (var i = 0; i < len; i++) {
82+
var val = args[i]
83+
try {
84+
val = JSON.stringify(val, 0, 4)
85+
} catch (e) {
86+
val += ''
87+
}
88+
items.push(val)
89+
}
90+
91+
debugElement.value += items.join(' ') + '\n'
92+
debugElement.scrollTop = debugElement.scrollHeight
93+
}
94+
95+
function initDebugElement() {
96+
var elem = doc.createElement('textarea')
97+
elem.style.cssText = 'z-index:999;width:100%;height:300px;overflow:auto;line-height:1.4;background:#333;color:#fff;font:16px Consolas;border:none;'
98+
var box = doc.body || doc.documentElement
99+
box.insertBefore(elem, box.firstChild)
100+
return elem
101+
}
102+
103+
function consoleLog(namespace, args, color) {
104+
var curr = +new Date
105+
var ms = curr - (prev || curr)
106+
prev = curr
107+
108+
var label = exports.prefix + namespace
109+
var main = '%c' + label + '%c'
110+
var arr = [null, color, inherit]
111+
for (var i = 0; i < args.length; i++) {
112+
arr.push(args[i])
113+
main += ' %o'
114+
}
115+
arr.push(color)
116+
main += '%c +' + ms + 'ms'
117+
arr[0] = main
118+
console.debug.apply(console, arr)
119+
}
120+
112121
}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
113122
},{}]},{},[1])(1)
114123
});

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "min-debug",
3-
"version": "1.3.0",
3+
"version": "1.4.0",
44
"description": "Debug module for browsers which can Display on page or in Console, for Phone and old IE debugging",
55
"main": "debug.js",
66
"directories": {

0 commit comments

Comments
 (0)