第三方趣味console,比我的强太多了,使用这个吧:
https://github.com/yy0608/console
我的console效果图:
;(function (global, factory) {
"use strict"; if ( typeof module === "object" && typeof module.exports === "object" ) { // For CommonJS and CommonJS-like environments where a proper `window`
// is present, execute the factory and get jQuery.
// For environments that do not have a `window` with a `document`
// (such as Node.js), expose a factory as module.exports.
// This accentuates the need for the creation of a real `window`.
// e.g. var jQuery = require("jquery")(window);
// See ticket #14549 for more info.
module.exports = global.document ? factory(global, true) : function( w ) {
if ( !w.document ) {
throw new Error( "jQuery requires a window with a document" );
}
return factory( w );
};
} else {
factory( global );
} })( typeof window !== "undefined" ? window : this, function( window, noGlobal ) { var
log,
sendText,
shadowText,
colorFulText,
rainBowText; sendText = function (_arguments, _css) {
// 获取第一个文本参数并且绑定color
var str = _arguments[0];
// 判断第一个参数是否为字符串类型
if (Object.prototype.toString.call(str) === "[object String]" || Object.prototype.toString.call(str) === "[object Number]") {
str = "%c" + str;
// 将类数组转化为数组
var arr = [].slice.call(_arguments);
// 替换第一个参数为拼接【%c】的字符串
arr.splice(0,1,str);
// 向数组索引为【1】的位置插入css字符串
arr.splice(1,0,_css);
// 调用console.log
console.log.apply(console,arr);
} else {
console.error("第一个参数必须为String类型或Number类型");
return false;
}
return true;
} // 3D文本
shadowText = function () {
var css = "text-shadow: 0 1px 0 #ccc,0 2px 0 #c9c9c9,0 3px 0 #bbb,0 4px 0 #b9b9b9,0 5px 0 #aaa,0 6px 1px rgba(0,0,0,.1),0 0 5px rgba(0,0,0,.1),0 1px 3px rgba(0,0,0,.3),0 3px 5px rgba(0,0,0,.2),0 5px 10px rgba(0,0,0,.25),0 10px 10px rgba(0,0,0,.2),0 20px 20px rgba(0,0,0,.15);font-size:5em";
sendText(arguments,css);
} // 富背景文本
colorFulText = function () {
var css = "background: rgba(252,234,187,1);background: -moz-linear-gradient(left, rgba(252,234,187,1) 0%, rgba(175,250,77,1) 12%, rgba(0,247,49,1) 28%, rgba(0,210,247,1) 39%,rgba(0,189,247,1) 51%, rgba(133,108,217,1) 64%, rgba(177,0,247,1) 78%, rgba(247,0,189,1) 87%, rgba(245,22,52,1) 100%);background: -webkit-gradient(left top, right top, color-stop(0%, rgba(252,234,187,1)), color-stop(12%, rgba(175,250,77,1)), color-stop(28%, rgba(0,247,49,1)), color-stop(39%, rgba(0,210,247,1)), color-stop(51%, rgba(0,189,247,1)), color-stop(64%, rgba(133,108,217,1)), color-stop(78%, rgba(177,0,247,1)), color-stop(87%, rgba(247,0,189,1)), color-stop(100%, rgba(245,22,52,1)));background: -webkit-linear-gradient(left, rgba(252,234,187,1) 0%, rgba(175,250,77,1) 12%, rgba(0,247,49,1) 28%, rgba(0,210,247,1) 39%, rgba(0,189,247,1) 51%, rgba(133,108,217,1) 64%, rgba(177,0,247,1) 78%, rgba(247,0,189,1) 87%, rgba(245,22,52,1) 100%);background: -o-linear-gradient(left, rgba(252,234,187,1) 0%, rgba(175,250,77,1) 12%, rgba(0,247,49,1) 28%, rgba(0,210,247,1) 39%, rgba(0,189,247,1) 51%, rgba(133,108,217,1) 64%, rgba(177,0,247,1) 78%, rgba(247,0,189,1) 87%, rgba(245,22,52,1) 100%);background: -ms-linear-gradient(left, rgba(252,234,187,1) 0%, rgba(175,250,77,1) 12%, rgba(0,247,49,1) 28%, rgba(0,210,247,1) 39%, rgba(0,189,247,1) 51%, rgba(133,108,217,1) 64%, rgba(177,0,247,1) 78%, rgba(247,0,189,1) 87%, rgba(245,22,52,1) 100%);background: linear-gradient(to right, rgba(252,234,187,1) 0%, rgba(175,250,77,1) 12%, rgba(0,247,49,1) 28%, rgba(0,210,247,1) 39%, rgba(0,189,247,1) 51%, rgba(133,108,217,1) 64%, rgba(177,0,247,1) 78%, rgba(247,0,189,1) 87%, rgba(245,22,52,1) 100%);filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fceabb', endColorstr='#f51634', GradientType=1 );font-size:5em";
sendText(arguments,css);
} // 彩虹文本
rainBowText = function () {
var css = "background-image:-webkit-gradient( linear, left top, right top, color-stop(0, #f22), color-stop(0.15, #f2f), color-stop(0.3, #22f), color-stop(0.45, #2ff), color-stop(0.6, #2f2),color-stop(0.75, #2f2), color-stop(0.9, #ff2), color-stop(1, #f22) );color:transparent;-webkit-background-clip: text;font-size:5em;";
sendText(arguments,css);
}
// 函数对象
log = {
shadowText: shadowText,
colorFulText: colorFulText,
rainBowText: rainBowText
}
// 加入全局上下文
if (!noGlobal) {
window.log = window.$log = log;
} return log;
})
使用方法:
- 参数的数量不限定
- 但第1个参数必须为String类型或者Number类型,作为被css渲染的文本。
$log.shadowText("Hello World",{name:"贝尔塔猫"},1,2,3,4,5,6,8) # 输出
$log.colorFulText(123,{name:"贝尔塔猫"},1,2,3,4,5,6,7,8,9,0) # 输出
$log.rainBowText([],{name:"贝尔塔猫"}) # 报错