Titanium 如何从WebView中引用Tianium JavaScript?
我有一个大型HTML5应用程序,正在使用Tianium为其添加本地支持。对我来说,最简单的问候方式是:Titanium 如何从WebView中引用Tianium JavaScript?,titanium,Titanium,我有一个大型HTML5应用程序,正在使用Tianium为其添加本地支持。对我来说,最简单的问候方式是: var webview = Titanium.UI.createWebView({url:'http://myApp.com'}); var window = Titanium.UI.createWindow(); window.add(webview); window.open(); 但是如果我尝试在现有代码中使用Tianium API,它就没有参考。是否有一个配置文件选项可以使Tiani
var webview = Titanium.UI.createWebView({url:'http://myApp.com'});
var window = Titanium.UI.createWindow();
window.add(webview);
window.open();
但是如果我尝试在现有代码中使用Tianium API,它就没有参考。是否有一个配置文件选项可以使Tianium API可用于我的web应用程序
我刚在以下文件中找到:
除了轮询webview的上下文之外,还有什么方法可以让上下文访问Tianium API吗?节省一些时间并使用phonegap,对于Appcelerator来说,您所做的并不是最佳实践我同意Aaron的观点,phonegap确实更适合您所做的事情。然而,如果你还想用钛做这个 简而言之,您必须从webview运行Ti.App.firevent(),这将允许您从Tianium javascript文件运行函数调用。从Tianium javascript文件中,您将添加一个带有Ti.App.addEventListener的事件侦听器
对于更详细的示例,我们需要更多的上下文。使用web视图将所有html文件加载到不同的.JS文件中,然后尝试执行此代码 Applicationwindow.js文件如果您想要android选项菜单,请保留此代码,否则请修改 根据你的事件 函数ApplicationWindow(){ })
module.exports=应用程序窗口 我在API中发现了这一点,但从未有机会实现它。使用PhoneGap。
Scripts downloaded from remote web servers cannot access the Titanium namespace,
however, you can use the web view evalJS method to execute a JavaScript
expression inside the web view, and retrieve the value of an expression.
//declare module dependencies
var All = require('ui/common/All');
Tree = require('ui/common/Tree');
EBOM = require('ui/common/E-BOM');
MBOM = require('ui/common/M-BOM');
SBOM = require('ui/common/S-BOM');
//create object instance
var self = Ti.UI.createWindow({
title:'Products',
exitOnClose:true,
navBarHidden:true,
backgroundColor:'#ffffff',
/////////////////////////////////////////////////////////////////////////////
activity: {
onCreateOptionsMenu: function(e) {
var menu = e.menu;
var menuItem = menu.add({ title: "C-BOM", icon: 'Arrow-Hover.jpg' });
//menuItem.setIcon("Arrow-Hover.jpg");
menuItem.addEventListener("click", function(e) {
var all = new All();
self.add(all);
});
var menuItem = menu.add({ title: "ALL-BOM" });
menuItem.setIcon("images/refresh_icon.png");
menuItem.addEventListener("click", function(e) {
var tree = new Tree();
self.add(tree);
});
var menuItem = menu.add({ title: "E-BOM" });
menuItem.setIcon("images/refresh_icon.png");
menuItem.addEventListener("click", function(e) {
var ebom = new EBOM();
self.add(ebom);
});
var menuItem = menu.add({ title: "M-BOM" });
menuItem.setIcon("images/refresh_icon.png");
menuItem.addEventListener("click", function(e) {
var mbom = new MBOM();
self.add(mbom);
});
var menuItem = menu.add({ title: "S-BOM" });
menuItem.setIcon("images/refresh_icon.png");
menuItem.addEventListener("click", function(e) {
var sbom = new SBOM();
self.add(sbom);
});
var menuItem = menu.add({ title: "Logout" });
menuItem.setIcon("Arrow-Hover.jpg");
menuItem.addEventListener("click", function(e) {
alert("Logout");
});
}
}
/////////////////////////////////////////////////////////////////////////////
});
var webview = Titanium.UI.createWebView({
url:'/ui/common/Login.html'
});
self.add(webview);
return self;