Javascript 创建窗口和注入样式表
我最近刚下载了TideSDK,我遇到了一些问题。基本上,我想创建一个新窗口,使用一个外部链接(工作正常),然后注入一个样式表来修改窗口,就像使用chrome扩展一样Javascript 创建窗口和注入样式表,javascript,tidesdk,Javascript,Tidesdk,我最近刚下载了TideSDK,我遇到了一些问题。基本上,我想创建一个新窗口,使用一个外部链接(工作正常),然后注入一个样式表来修改窗口,就像使用chrome扩展一样 var newWindow = Ti.UI.createWindow({ id: "newwindow", url: "http://www.example.com", title: "New Window", width: 1100, minWidth
var newWindow = Ti.UI.createWindow({
id: "newwindow",
url: "http://www.example.com",
title: "New Window",
width: 1100,
minWidth: 400,
maxWidth: 1100,
height: 730,
minHeight: 500,
maxHeight: 730,
maximizable: true,
minimizable: true,
closeable: true,
resizable: true,
fullscreen: false,
maximized: false,
minimized: false,
usingChrome: true,
topMost: false,
visible: true,
transparentBackground: false,
transparency: false
});
newWindow.open();
我一辈子都不知道该怎么做。我尝试了以下几种变体:
var css = "<link type='text/css' href='app://style.css' />";
newWindow.document.getElementById('body').appendChild();
var css=”“;
newWindow.document.getElementById('body').appendChild();
新窗口中不会附加任何内容。事实上,无论我如何测试新窗口,似乎都没有被认为存在。有什么想法吗?如果域匹配,您可以在站点的
iframe
中向外部页面添加CSS。请参阅。但是,由于域是独立的,因此iframe和父级之间没有通信。因此,您有一个简单但不幸的答案:这根本不可能。您控制“新窗口”的来源吗?不,这是一个运行我喜欢但讨厌布局的服务的外部网站。除非您在自己页面的iframe中有外部网站(请参阅),否则这根本不可能。没问题。我添加了我的解决方案作为答案。经过大量研究后,似乎由于同源策略,您只能在相同域上的iFrame上执行此操作:(