我使用htmlLoader.loadString(someHtml)
加载网站。包括JS来源。 有没有机会获得这个JS文件中的函数?loadString(...) - 访问JS函数
我还将属性placeLoadStringContentInApplicationSandbox
设置为true。
我使用htmlLoader.loadString(someHtml)
加载网站。包括JS来源。 有没有机会获得这个JS文件中的函数?loadString(...) - 访问JS函数
我还将属性placeLoadStringContentInApplicationSandbox
设置为true。
文档是你最好的朋友我的朋友。 http://livedocs.adobe.com/flex/3/html/help.html?content=ProgrammingHTMLAndJavaScript_02.html
更具体地说,http://livedocs.adobe.com/flex/3/html/help.html?content=ProgrammingHTMLAndJavaScript_07.html
很酷,但是当你试图从应用程序存储或用户目录加载JS时,这个失败.. – pawlus
但是这个问题似乎与你的问题有点不相干。你是什么意思,它失败了?是否存在安全问题,甚至无法加载HTML源代码?那么,你当然不能使用JS。我不确定这是否会有所帮助,但http://forums.adobe.com/thread/435399在我的一个AIR项目中,我能够拉动受密码保护的zip文件,实时打开它,找到一个HTML文件并提取数据。如果我记得很清楚,我甚至在其中使用了一些JS函数。也许有些代码会帮助我们。 –
的问题是,如何让访问JS功能 - showAlert()?在这种情况下,我使用userDirectory来存储文件。这两个文件 - txt(里面有html源代码)和JS - 都在这个目录中 -/Users/unsername /。希望现在一切都会清楚。感谢帮助。
private function init():void
{
var testFile:File = File.userDirectory.resolvePath("testreadonly.txt");
var readFileStream:FileStream = new FileStream();
readFileStream.open(testFile, FileMode.READ);
var test:String = readFileStream.readMultiByte(testFile.size, File.systemCharset);
var myJS:File = File.userDirectory.resolvePath("myJS.js");
trace("my JS : " + myJS.exists);//it shows TRUE
myHTML.htmlLoader.placeLoadStringContentInApplicationSandbox = true;
myHTML.htmlLoader.loadString(test);
}
我的HMTL文件来源:
<html><body><script type='text/javascript' src='myJS.js'></script><script type='text/javascript'>showAlert()</script>Pawel</body></html>
我的JS文件:
function showAlert()
{
alert('alert');
}
据我记得,我的JS功能是在HTML代码。我看到你试图访问外部的JS文件。作为一个概念证明,你可以尝试将JS集成到HTML并尝试访问它吗?那么我们至少可以知道它的工作原理,因为可能还有其他一些问题需要解决:安全性,文件许可等。让我们一次一个脚印。 –
究竟你在做什么,为什么你需要这个功能?目的是什么? –