我有一个非常简单的测试页面,它使用jQuery的$ .getJSON和$ .ajax方法的XHR请求.同一页面在某些情况下有效,而在其他情况下则无效.特别是,它在Ubuntu上的Chrome中不起作用.
我正在使用Chrome 5.0.342.7测试版测试Ubuntu 9.10,使用Chrome 5.0.307.9测试版测试Mac OSX 10.6.2.
可以从这里下载tar/gzip文件中的一小组3个文件:http: //issues.tauren.com/testjson/testjson.tgz
当它工作时,Chrome控制台会说:
XHR finished loading: "http://issues.tauren.com/testjson/data.json".
index.html:16Using getJSON
index.html:21
Object
result: "success"
__proto__: Object
index.html:22success
XHR finished loading: "http://issues.tauren.com/testjson/data.json".
index.html:29Using ajax with json dataType
index.html:34
Object
result: "success"
__proto__: Object
index.html:35success
XHR finished loading: "http://issues.tauren.com/testjson/data.json".
index.html:46Using ajax with text dataType
index.html:51{"result":"success"}
index.html:52undefined
Run Code Online (Sandbox Code Playgroud)
如果它不起作用,Chrome控制台将显示以下内容:
index.html:16Using getJSON
index.html:21null
index.html:22Uncaught TypeError: Cannot read property 'result' of null
index.html:29Using ajax with …Run Code Online (Sandbox Code Playgroud) 我想知道是否可以通过仅使用Javascript获取PDF文件中的文本?如果有,任何人都可以告诉我如何?
我知道有一些服务器端的java,c#等库,但我不想使用服务器.谢谢
在WebGL中使用GLSL着色器的流行方式似乎是将它们嵌入到主html文件中.顶点和片段着色器嵌入在以下标记中:
<script id="shader-fs" type="x-shader/x-fragment">
Run Code Online (Sandbox Code Playgroud)
这与我在Mozilla Developer Network页面中的WebGL示例中看到的相同.
这适用于简单的应用程序,但是当你有一个带有许多着色器的复杂应用程序时,html文件会变得混乱.(我一直在编辑错误的着色器!)另外,如果你想重复使用着色器,这个方案很不方便.
所以我考虑将这些着色器放在一个单独的XML文件中,并使用XMLHttpRequest()加载它们.然后我看到其他人有同样的想法:
http://webreflection.blogspot.com/2010/09/fragment-and-vertex-shaders-my-way-to.html
我喜欢使用.c文件的建议,因为这为GLSL提供了语法高亮和其他编辑器便利.
但是上述方法的问题是(据我所知)XMLHttpRequest()在开发和测试WebGL应用程序时无法加载本地.c文件 - 即在客户端.但是在此过程中继续将其上传到服务器是很麻烦的.
因此,如果我想将着色器保留在html文件之外,那么将它们作为字符串嵌入代码中是唯一的选择吗?但这会使编写和调试变得困难......
我很感激有关在WebGL应用程序中管理多个GLSL着色器的任何建议.
问候
编辑(2011年5月5日)
由于我使用Mac进行开发,我决定启用Apache服务器,并将我的webgl代码放在http:// localhost/~username /下.这避免了在开发期间禁用文件:协议的问题.现在javascript文件加载代码在本地工作,因为使用了http:而不是file:.我以为我会把它放在这里以防万一有人发现它有用.
我在与JavaScript文件相同的文件夹中有一个文本文件.这两个文件都存储在我的本地计算机上..txt文件在每行上都是一个单词,如:
red
green
blue
black
Run Code Online (Sandbox Code Playgroud)
我想在每一行中读取并尽可能高效地将它们存储在JavaScript数组中.你怎么做到这一点?
我已经阅读了关于这个主题的一些先前的问题,但我真的需要100%肯定!
是否可以从本地系统上的.txt文件中读取并将其显示在我的HTML-BODY中?
我试过几个函数,这里有一个:
function readFile (path) {
var fso = new ActiveXObject('Scripting.FileSystemObject'),
iStream=fso.OpenTextFile(path, 1, false);
while(!iStream.AtEndOfStream) {
document.body.innerHTML += iStream.ReadLine() + '<br/>';
}
iStream.Close();
}
readFile("testing.txt");
Run Code Online (Sandbox Code Playgroud)
该文件的内容只是我想从文本文件中读取的大约100个单词,并显示在我的HTML-BODY中.
没有我自己的服务器,这可能吗?
我想要的是:
<script src="shader.glsl" type="x-shader/x-fragment"></script>
<script src="shader.glsl" type="x-shader/x-vertex"></script>
Run Code Online (Sandbox Code Playgroud)
或者:
<script src="shader.frag" type="x-shader/x-fragment"></script>
<script src="shader.vert" type="x-shader/x-vertex"></script>
Run Code Online (Sandbox Code Playgroud)
所以我有两种简单的着色器类型:
类型=x-着色器/x-片段
precision mediump float;
void main(void) {
gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0);
}
Run Code Online (Sandbox Code Playgroud)类型=x-着色器/x-顶点
attribute vec3 aVertexPosition;
uniform mat4 uMVMatrix;
uniform mat4 uPMatrix;
void main(void) {
gl_Position = uPMatrix * uMVMatrix * vec4(aVertexPosition, 1.0);
}
Run Code Online (Sandbox Code Playgroud)着色器来自此 WebGL 教程
.glsl?如果不是,则着色器类型的其他文件格式如下:
.vert.frag问:我想用这个做什么?
答:从 JavaScript 动态加载我的文件并将其插入到我的 HTML 文件中。
问:你想知道如何动态加载文件吗?
答:不,这与“在 HTML 中加载 GLSL 文件 (WebGL)?”问题无关。
问:那你想要什么?
答:看看问题开头的“我想要什么”。
问:您想分享您的 JavaScript 导入代码吗?
答:是的,但我认为这是与回答问题无关的信息
我有一个存储在服务器上的文本文件和一个类似HTML的对象,如下所示:
<object id="data" type="text/plain" data="test.txt"></object>
Run Code Online (Sandbox Code Playgroud)
如何阅读test.txtJavascript中的内容?到目前为止,我有:
var data = document.getElementByID("data");
Run Code Online (Sandbox Code Playgroud)
但是我不知道如何读取对象标记内的HTML文档。
我有一个正在定期更新的文本文件,我想知道是否可以使用 javascript 逐行读取文件并将值保存在变量中,然后每次使用新值更新 html 页面已加载。html 页面是一个简单的页面,用于显示工作中的信息,而不是实时网页,除了在两个页面之间导航之外,不需要任何用户输入。文本文件位于每个人都可以访问的网络驱动器上。这是我正在尝试完成的一个示例:
var value1;
var value2;
Run Code Online (Sandbox Code Playgroud)
如果可能,使用 javascript 读取文件并提取数据并分配给 value1 和 value2。
document.getElementsByClassName("class for <p>")[0].innerHTML = value;
document.getElementsByClassName("class for another <p>")[0].innerHTML = value;
Run Code Online (Sandbox Code Playgroud)
我用谷歌搜索了这个,但找不到任何有效的东西。如果 JS 无法做到这一点,请提供有关如何以不同方式完成此操作的任何建议。提前致谢。
我的Laravel应用程序中有一个Vue组件.
我想直接在我的Vue组件中检索配置(或.env Laravel文件)中的URL,而不是硬编码.在webpack laravel mix中,我可以像这样检索我的.env变量.
require('dotenv').config()
let proxyUrl = process.env.APP_URL
但是当我想在我的app.js中这样做时,我有一个can't resolve fs尝试要求dotenv的时候.
在Vue组件中提供此数据的最佳方法是什么?
我正在尝试将文本文件(在我的机器上)转换为字符串。最好/最简单的方法是什么?我正在寻找一个看起来像这样的基本功能:
function fileToString(filepath) {
//this returns a string with the contents of the file
}
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
编辑:我现在知道还有另一个问题会问这个问题,但我不明白那个问题,所以我用不同的词问了它。