如何获取src脚本的文本内容

时间:2013-11-04 13:47:00

标签: javascript html

我有一个这样的脚本:

<script type="x-shader/x-vertex" id="vertexShader" src="./Shaders/Phong/vertex_shader"> </script>

我如何获得它的文字?我试过了:

console.log($("#vertexShader").text());

但我总是得到一个空字符串,而不是文件中包含的字符串。如何获取文件内容?

3 个答案:

答案 0 :(得分:3)

最简单的解决方案是发出ajax查询:

var httpRequest = new XMLHttpRequest();
httpRequest.onreadystatechange = function() {
    if (httpRequest.readyState === 4) {
        if (httpRequest.status === 200) {
            var scriptContent = httpRequest.responseText;
            console.log(scriptContent);
        }
    }
};
httpRequest.open('GET', document.getElementById('vertexShader').src);
httpRequest.send();

避免使用jQuery ajax函数,因为它们会自动执行脚本。

答案 1 :(得分:0)

$("#vertexShader").Text()不会给你什么,因为脚本是远程加载的:)

如果您想获取脚本内容,可以执行var url=$("#vertexShader").attr('src');,它将为您提供脚本的URL。现在您可以使用

加载它
var response;

$.ajax({
        type:'GET',
        url: url,
        success:function(data){
            response=data;
        }
    });

哪个会将脚本内容送到响应变量

答案 2 :(得分:-1)

在CSS选择器中,要获取具有 id 的元素,必须在其前面添加。像

#vertexShader

所以它变成

$('#vertexShader')