我有一本涉及脚本的 ePub3 书,它适用于 Readium,但仅部分适用于 iBooks。我的猜测是 JavaScript 有时会出错(尽管作为标准的网络应用程序,完全相同的代码在 Safari 中运行良好)。关于如何进行调试的任何想法?
user663031
问问题
1444 次
2 回答
5
您可以在终端应用程序中使用此行启用 iBooks 中的 Webkit Web Inspector 以更改其设置:
defaults write com.apple.iBooksX WebKitDeveloperExtras -bool YES
重新启动 iBooks 后,您会在上下文菜单(更多 > 显示检查器)中找到检查器。所有检查器工具都可用,包括控制台等。
于 2015-03-01T20:53:34.197 回答
0
Azardi Online 可用于使用浏览器读取文件。可以从那里使用内置或附加控制台进行调试。或者可以创建一个控制台垫片:
if(!console) {
console = {
"_log" : [],
"log" : function() {
var arr = [];
for ( var i = 0; i < arguments.length; i++ ) {
arr.push( arguments[ i ] );
}
this._log.push( arr.join( ", ") );
},
"trace" : function() {
var stack;
try {
throw new Error();
} catch( ex ) {
stack = ex.stack;
}
console.log( "console.trace()\n" + stack.split( "\n" ).slice( 2 ).join( " \n" ) );
},
"dir" : function( obj ) {
console.log( "Content of " + obj );
for ( var key in obj ) {
var value = typeof obj[ key ] === "function" ? "function" : obj[ key ];
console.log( " -\"" + key + "\" -> \"" + value + "\"" );
}
},
"show" : function() {
alert( this._log.join( "\n" ) );
this._log = [];
}
};
window.onerror = function( msg, url, line ) {
console.log("ERROR: \"" + msg + "\" at \"" + "\", line " + line);
}
window.addEventListener( "touchstart", function( e ) {
if( e.touches.length === 3 ) {
console.show();
}
} );
}
参考
于 2013-03-11T23:09:17.390 回答