【发布时间】:2015-03-04 14:59:10
【问题描述】:
我正在使用 Intel SDK 开发 HTML5 应用程序,为 Windows Phone 8 平台编译,并在 Nokia Lumia 530 上进行部署和测试。
我在这个场景中。我必须从同一个应用程序执行 3 个不同的操作:(1) 调用系统浏览器传递 URL,(2) 调用系统电话应用程序传递电话号码,(3) 调用 API 的 ajax。
我的问题是 window.open() 不适用于链接“tel:123456789”,如果尝试使用 window.location.href 进行电话操作,我在返回我的应用程序后无法使用 window.open()电话。似乎 window.location.href 禁止/阻止应用上下文以使用 window.open()。
为了清楚起见,这是我的代码,我尝试了所有组合:
HTML:
<button class="ui-btn my-button" id="button1">Bottone 1</button>
<button class="ui-btn my-button" id="button2">Bottone 2</button>
<button class="ui-btn my-button" id="button3">Bottone 3</button>
JS [inside var onDeviceReady=function(){ }]:
$("#button1").on("click", function () {
window.open ('http://www.google.it', '_blank'); // WORKS PERFECTLY BEFORE I CLICK BUTTON 2, DOESN'T WORKS AFTER
});
$("#button2").on("click", function () {
window.open ('tel:123456789', '_blank'); // WORKS BUT BLOCKS OTHERS BUTTONS ACTIONS AFTER COME BACK IN APP FROM TELEPHONE CALL
//window.open ('tel:123456789', '_system'); // DOESN'T WORKS, BUTTON CLICK HAS NO EFFECT
//window.open ('tel:123456789', '_self'); // DOESN'T WORKS, BUTTON CLICK HAS NO EFFECT
//window.location.href = 'tel:123456789', '_blank'; // WORKS BUT BLOCKS OTHERS BUTTONS ACTIONS AFTER COME BACK IN APP FROM TELEPHONE CALL
//window.location.href = 'tel:123456789', '_system'; // WORKS BUT BLOCKS OTHERS BUTTONS ACTIONS AFTER COME BACK IN APP FROM TELEPHONE CALL
//window.location.href = 'tel:123456789', '_self'; // WORKS BUT BLOCKS OTHERS BUTTONS ACTIONS AFTER COME BACK IN APP FROM TELEPHONE CALL
});
$("#button3").on("click", function () {
// WORKS PERFECTLY BEFORE I CLICK BUTTON 2, DOESN'T WORKS AFTER
$.ajax({
type: "GET",
url: 'https://customers.clouditalia.com/public/ws_etnicom_ri?numerochiamato=05...',
cache: false,
dataType: "text",
success: function (data) {
alert(data);
},
error: function (data) {
alert("ERROR: response = " + data);
}
});
});
有人可以帮我吗?
【问题讨论】:
标签: html windows-phone-8 window.open intel-xdk