如何检查移动safari的窗口对象?
如何检查移动safari的窗口对象?
或者更具体地说是window.navigator – 尝试转换为字符串不起作用,我也无法在控制台中探索它。
谢谢!
编辑:
console.log(window.navigator);
console.log(String(window.navigator));
console.log(JSON.stringify(window.navigator));
console.log(window.navigator.serialize());
还尝试通过套接字将所有这些变体发送到服务器并将其记录在那里。
输出是[object Navigator]
, "{}"
或什么都没有
我喜欢jsconsole.com。
此外,您可以使用json2.js库(https://github.com/douglascrockford/JSON-js),它将为您提供JSON.stringify()函数。
console.log(JSON.stringify({a:'a',b:'b'});
更新! 在OS X上,您可以在iOS模拟器和iOS 6设备上使用Safari Web检查器。
- 首先在Safari中启用Developer菜单。
-
接下来,在iOS设备(或模拟器)上启用远程调试。
Settings > Safari > Advanced > Web Inspector (ON)
- 在设备上返回Safari。
- 返回计算机,单击开发人员菜单,然后选择您的设备(例如iPhone模拟器,iPhone)
注意:只有当Safari处于活动状态且正在运行时,您才会在“开发人员”菜单中看到您的设备。
请享用!
这些输出看起来完全正确。 例如,当我要求window.navigator
的字符串版本时,我正确地得到了
console.log(String(window.navigator)); "[object Navigator]"
另一方面,当我要求特定值时,我得到(在Chromium中):
console.log(window.navigator.userAgent); "Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.71 Safari/534.24"
当我试图列举所有项目时,我得到了
for (var i in window.navigator) console.log(i); language product mimeTypes appVersion plugins onLine platform vendor appCodeName cookieEnabled geolocation appName productSub userAgent vendorSub javaEnabled getStorageUpdates
(请注意,在上面的代码行中,我没有检查hasOwnProperty
,通常在迭代对象元素时应该使用它)。
您也可以使用它来激活设备上的Firebug。 花了我很多时间才找到这个。
http://martinkool.com/post/13629963755/firebug-on-ipad-and-iphone
移动版Safari中没有“开发人员工具”窗口。 有一个调试控制台,它将报告javascript,html和css中的错误,但它远不及桌面浏览器中的开发人员工具。 这个调试控制台不允许输入javascript(虽然这可以在地址栏中完成,例如javascript:alert("hi");
)
要启用调试控制台,请打开设置应用程序,转到Safari菜单,然后打开Developer ,然后打开调试控制台。 返回Safari,滚动到页面顶部,显示如何进入调试控制台。