我很难搞清楚如何从外页访问iframe中加载的页面.这两个页面都是本地文件,而我正在使用Chrome.
我有一个外页和许多内页.外部页面应始终显示内部页面的页面标题(在我的应用程序中有意义,在这个精简的示例中可能更少).这在AppJS中没有任何问题,但我被要求直接在浏览器中使这个应用程序工作.我收到错误" Blocked a frame with origin"null"来访问一个原始"null"的帧.协议,域和端口必须匹配. "
我认为这是由于Chrome与本地文件的原始政策相同,但这并没有帮助我直接解决问题.我可以通过在每种方法中使用window.postMessage方法绕过同一起源策略来解决这个简化示例中的问题.但是,超越这个例子,我还想从外页操作内页的DOM,因为这会使我的代码更清晰 - 所以发布消息将不会完成这项工作.
外页
<!DOCTYPE html>
<html>
<head>
<meta name="viewport">
</head>
<body>
This text is in the outer page
<iframe src="html/Home.html" seamless id="PageContent_Iframe"></iframe>
<script src="./js/LoadNewPage.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
内页
<!DOCTYPE html>
<html>
<head>
<title id="Page_Title">Home</title>
<meta name="viewport">
</head>
<body>
This text is in the inner page
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
JavaScript的
var iFrameWindow = document.getElementById("PageContent_Iframe").contentWindow;
var pageTitleElement = iFrameWindow.$("#Page_Title");
Run Code Online (Sandbox Code Playgroud)
每它是可能的Chrome支持contentWindow/contentDocument的未来版本时加载的iFrame从本地的HTML文件的本地HTML文件?,我尝试用旗帜启动Chrome
--allow-file-access-from-files
Run Code Online (Sandbox Code Playgroud)
但结果没有变化.
每次在Chrome中禁用相同的来源政策,我尝试使用旗帜启动Chrome
--disable-web-security
Run Code Online (Sandbox Code Playgroud)
但结果再没有变化.
所以不确定这是否是正确的地方问这些但我知道我也许可以得到一些答案.
我正在进入Meteor,现在想制作一些桌面应用程序.我打算去制作原生的Mac应用程序.但后来我找到了应用程序wunderlist及其开源使用tidesdk.
无论如何,我希望得到一些关于这些框架(优点/缺点等)的一般反馈.我对他们所做的事情没有概念性的理解.(或者两者之间的主要区别是什么).
我注意到你可以在其中进行路由.这是如何工作的?因为没有URL或客户端/服务器端.
我想知道的另一件事是,是否可以以类似的方式在桌面上使用MeteorJS?
谢谢.
我花了一整夜时间尝试通过html5构建跨平台桌面应用程序的不同工具,到目前为止,appjs似乎是完美的.我只是在玩基于Windows可执行文件的演示项目,但我想知道是否有任何关于如何将项目转换为跨平台可执行文件(单个文件)的指南或教程,而不是所有的appjs加载程序可执行文件子文件夹中的源代码.
我也尝试过adobe air但是css动画超出了差,慢/波动(可能做错了不确定).大约一年前,我正在修补钛,但他们已经放弃了编译桌面.
我基本上所做的就是加载外部URL(最终将添加身份验证).
我正在尝试将带有用户身份验证数据的文件写入磁盘.为实现这一点,我写了以下函数:
function writeAuthFile(data, success, fail) {
var fs = require('fs');
fs.writeFile('auth.json', JSON.stringify(data), function(error) {
if(error) {
console.log('[write auth]: ' + err);
if (fail)
fail(error);
} else {
console.log('[write auth]: success');
if (success)
success();
}
});
}
Run Code Online (Sandbox Code Playgroud)
但它从不称呼回调.我查看了nodeJS文档,fs
似乎一切都结束了.所有其他异步执行似乎都已停止.
这是我第一次在nodeJS中开发一些认真的东西,所以我在这个环境中的经验并不是那么多.
以下是我运行js代码的方法:
node --harmony ./data/app.js
Run Code Online (Sandbox Code Playgroud)
现在我想转向CoffeeScript.所以我尝试像这样运行它:
coffee ./data/app.coffee
Run Code Online (Sandbox Code Playgroud)
它失败了.我该如何通过此--harmony
选项?
我正在为我的桌面应用程序使用nodejs和chromium.问题是我无法在chrome中打开pdf文件.所以我用Google搜索并发现大多数答案都与mozplugger插件有关.我安装了以下链接中提到的插件:
http://www.tootips.com/2013/01/how-to-open-pdf-files-inside-chromium.html
现在我收到一条错误消息:当我尝试在chrome中打开pdf文件时," Mozplugger:M4解析配置生成错误 ".我该如何解决这个错误?
请帮我!
我在AppJs中制作了一个计算应用程序.
基本上它是一堆:
<input type=number>
Run Code Online (Sandbox Code Playgroud)
领域.
为了使它更友好,我认为我应该用点替换所有逗号,以便javascript可以使用实际值来计算.
我尝试使用以下代码进行此操作:
$("input[type=number]").keyup(function(e){
var key = e.which ? e.which : event.keyCode;
if(key == 110 || key == 188){
e.preventDefault();
var value = $(this).val();
$(this).val(value.replace(",","."));
}
});
Run Code Online (Sandbox Code Playgroud)
在资源管理器9中,这可以按预期工作:请参阅小提琴
但是,由于App.js使用铬,我猜这是铬中发生的事情.我该如何解决这个问题?
这是我的应用程序中发生的事情:当您输入包含逗号字符的数字时.逗号char移到右侧,当输入框失去焦点时,删除逗号(可能因为type = number中不允许使用逗号字符)
我需要使用sqlite3构建一个自包含的appjs应用程序,用于win xp 32bit.我自己正在运行windows 7 32bit并且无法通过npm安装sqlit3.我已经尝试安装所有的gyp和正确的python代码,错误很多,永远不会结束.
有没有办法可以获得win32的sqlite3节点模块的压缩版本,这是预编译/构建的,所以我可以A)在我的系统上使用它进行开发,B)给客户端而不需要运行任何设置?
编辑我一直在谷歌上搜索像构建sqlite3 for windows这样的东西是一场噩梦&https://github.com/developmentseed/node-sqlite3/issues/55已被链接了几次.我的客户能够在不安装visual studio或python的情况下运行应用程序,还是仅仅是要求?如果是这样,是否有任何其他数据库可以自包含而不运行数据库服务器?
我正在阅读一个开源项目,它有一个像这样的js文件
var pipe = function(source, listeners){
source.onmessage = function onmessage(msg){
//.. do something ..
};
return {
//.. something ...
};
}(nativeWindow || appjs, {});
Run Code Online (Sandbox Code Playgroud)
什么(nativeWindow || appjs )
意味着它们都是对象?
这是否意味着为这两个函数调用了这个函数?
或者它正在合并这两个对象?
这.onmessage
是标准的东西吗?alert()
或者window
?我的意思是标准是这个.onmessage
功能幕后发生的事情还是就像简单的功能一样?
谢谢
appjs ×9
javascript ×5
node.js ×5
tidesdk ×2
chromium ×1
coffeescript ×1
html5 ×1
iframe ×1
jquery ×1
option ×1
osx-yosemite ×1
sqlite ×1
titanium ×1
windows-7 ×1
windows-xp ×1