Windows 8 Windows 8 JavaScript共享魅力-“;此应用程序可以';“不要分享。”;
我的Windows 8应用程序允许在1个页面(高分页面)上共享,但由于共享代码仅在高分页面上,因此当用户尝试在高分页面以外的其他页面上共享时,应用程序会显示“此应用程序无法共享” 它应该说“现在没有什么可共享的。”为了解决这个问题,我在主页上添加了共享代码,这解决了这个问题,但破坏了高分页面上的共享,我得到了这个错误“0x800000e-JavaScript运行时错误:在意外时间调用了一个方法。” 我的主页JavaScript代码是:Windows 8 Windows 8 JavaScript共享魅力-“;此应用程序可以';“不要分享。”;,windows-8,Windows 8,我的Windows 8应用程序允许在1个页面(高分页面)上共享,但由于共享代码仅在高分页面上,因此当用户尝试在高分页面以外的其他页面上共享时,应用程序会显示“此应用程序无法共享” 它应该说“现在没有什么可共享的。”为了解决这个问题,我在主页上添加了共享代码,这解决了这个问题,但破坏了高分页面上的共享,我得到了这个错误“0x800000e-JavaScript运行时错误:在意外时间调用了一个方法。” 我的主页JavaScript代码是: (function () { "use strict
(function () {
"use strict";
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
var storage = Windows.Storage;
var dtm2 = Windows.ApplicationModel.DataTransfer.DataTransferManager;
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
WinJS.UI.Pages.define("/pages/home/home.html", {
// This function is called whenever a user navigates to this page. It
// populates the page elements with the app's data.
ready: function (element, options) {
// TODO: Initialize the page here.
// Initialize everything
initialize();
// Button listeners
var add = document.getElementById("add");
add.addEventListener("click", this.linkClickEventHandler, false);
var sub = document.getElementById("sub");
sub.addEventListener("click", this.linkClickEventHandler, false);
var mul = document.getElementById("mul");
mul.addEventListener("click", this.linkClickEventHandler, false);
var div = document.getElementById("div");
div.addEventListener("click", this.linkClickEventHandler, false);
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
dtm2.getForCurrentView().addEventListener("datarequested", this.onDataRequested);
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
},
linkClickEventHandler: function (eventInfo) {
ope = this.id;
var link = "/pages/quiz/quiz.html";
WinJS.Navigation.navigate(link);
},
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
onDataRequested: function (e) {
},
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
unload: function () {
// TODO: Respond to navigations away from this page.
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
WinJS.Navigation.removeEventListener("datarequested", this.onDataRequested);
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
},
});
})();
我的高分页面JavaScript代码是:
// For an introduction to the Page Control template, see the following documentation:
// http://go.microsoft.com/fwlink/?LinkId=232511
(function () {
"use strict";
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
var storage = Windows.Storage;
var dtm = Windows.ApplicationModel.DataTransfer.DataTransferManager;
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
WinJS.UI.Pages.define("/pages/results/results.html", {
// This function is called whenever a user navigates to this page. It
// populates the page elements with the app's data.
ready: function (element, options) {
// TODO: Initialize the page here.
// Show results
showResults();
// Button listeners
var btnHome = document.getElementById("btnHome");
btnHome.addEventListener("click", this.linkClickEventHandler, false);
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
dtm.getForCurrentView().addEventListener("datarequested", this.onDataRequested);
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
},
linkClickEventHandler: function (eventInfo) {
var link = "/pages/home/home.html";
WinJS.Navigation.navigate(link);
},
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
onDataRequested: function (e) {
var request = e.request;
request.data.properties.title = "Your Simple Math Results";
var message = shareLine1 + " ";
message += shareLine2 + " ";
message += shareLine3;
request.data.setText(message);
},
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
unload: function () {
// TODO: Respond to navigations away from this page.
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
WinJS.Navigation.removeEventListener("datarequested", this.onDataRequested);
// SHARING //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
},
updateLayout: function (element, viewState, lastViewState) {
/// <param name="element" domElement="true" />
// TODO: Respond to changes in viewState.
}
});
})();
//有关页面控件模板的介绍,请参阅以下文档:
// http://go.microsoft.com/fwlink/?LinkId=232511
(功能(){
“严格使用”;
//分享//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
var storage=Windows.storage;
var dtm=Windows.ApplicationModel.DataTransfer.DataTransferManager;
//分享//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
定义(“/Pages/results/results.html”{
//每当用户导航到此页面时,都会调用此函数。它
//用应用程序的数据填充页面元素。
就绪:功能(元素、选项){
//TODO:在此处初始化页面。
//显示结果
showResults();
//按钮侦听器
var btnHome=document.getElementById(“btnHome”);
btnHome.addEventListener(“单击”,this.linkClickEventHandler,false);
//分享//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
dtm.getForCurrentView().addEventListener(“datarequested”,this.onDataRequested);
//分享//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
},
linkClickEventHandler:函数(eventInfo){
var link=“/pages/home/home.html”;
WinJS.Navigation.navigate(链接);
},
//分享//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
onDataRequested:函数(e){
var-request=e.request;
request.data.properties.title=“您的简单数学结果”;
var message=shareLine1+“”;
消息+=共享行2+“”;
消息+=共享线路3;
request.data.setText(消息);
},
//分享//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
卸载:函数(){
//TODO:响应离开此页面的导航。
//分享//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
WinJS.Navigation.removeEventListener(“datarequested”,this.onDataRequested);
//分享//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
},
updateLayout:函数(元素、viewState、lastViewState){
///
//TODO:响应viewState中的更改。
}
});
})();
当您导航出页面时,需要取消附加“datarequested”事件。即,当按下后退按钮时:
dtm2.getForCurrentView().removeEventListener("datarequested", this.onDataRequested);