2014-09-20 42 views
0

正如标题所示,是否有任何方式在jQuery中检测/确定通话状态栏是否可见(因此如果用户在通话中),所以我可以进行更改到我的iOS Web应用程序的GUI相应?jQuery - 检测iPhone通话状态栏

我认识到“确定用户是否在通话中”可能无法从javascript中获得。我也意识到可以使用Objective C和Phonegap/Cordova插件完成这一事实。但是,这不是我正在寻找的解决方案。

我宁愿寻找的是一种解决方法,通过其他一些参数来确定这一点,例如通过以任何方式测量状态栏或orientation change event的高度。有任何想法吗?

PS。请让我知道,如果你想看看我迄今为止没有成果的尝试。

+0

状态栏不是WebView的一部分,所以如果Javascript有任何关于它的信息,我会非常惊讶。 – 2014-09-20 22:47:14

+0

这绝对是正确的,但正如我所说的,即时通讯寻找一种方式来解决另一种方式。对于exempel测量画布大小,增加一个类似onOrientationChange的东西的监听器等 – Jonathan 2014-09-21 02:09:19

回答

1

是的,这是多么容易 - 只需测量画布高度!假设用户使用的是iPhone:

var biggerStatusBar = false; 
var screenHeight = window.screen.height; 
var canvasHeight = $(document).height(); 
if(screenHeight-canvasHeight==40) 
biggerStatusBar =true; 

alert("in-call status bar active: " + biggerStatusBar); 
+0

希望没有别的可以改变画布高度...... – 2014-09-21 13:03:24

+0

真的,我会彻底测试这个,并回来修改这个if需要。 – Jonathan 2014-09-21 13:14:03

+0

例如,我认为在进行逐行调整方向时会出现类似的状态栏,所以我期望它对画布大小具有相同的效果。 – 2014-09-22 00:15:33