欢迎来到站长教程网!

AJAX

当前位置:主页 > 网络编程 > AJAX >

浏览器跨域获取Lrc歌词数据的解决办法

时间:2020-09-09|栏目:AJAX|点击:

获取同一个域的数据,可以通过XMLHTTP组件或IFRAME来实现,不存在跨域访问的权限问题,因此比较简单。
    但如果要访问不同域的数据时,由于浏览器的安全设置,XMLHTTP没有权限获取数据,而IFRAME没有权限将获取的数据传递给父窗口,似乎没有其它解决办法。

    顿悟……
    网页内引用不同域的脚本并不会提示权限不足,对了,就是它没错!

    解决方法找到了,现在来简单测试一下:

    首先在51js.com服务器上新建一页面(Test.html)。


[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

    解释两个关键点:
    1. lastScript用于存放上次建立的script节点的ID,在下次要再新建script节点时,要删除上次建立的节点,以免加载的脚本越来越多,占用过多的内存。
    2. url后面加了一个数值d是为了防止浏览器缓存脚本数据,在本例中可以不加,但是如果脚本是由服务器动态生成的,那最好加上。

    然后再建立两个java script脚本用于测试。

alert.js:
alert('You can see me!');
info.js:
g('myname').value='谱乐视听';
g('myblog').value='www.aboutplayer.com';

    好了,谱乐已把它们放在aboutplayer.com服务器下,这样它们和Test.html就不在同一个域内了。

    用浏览器打开Test.html文件。
    点击“Test Alert”,应该会弹出对话框显示You can see me!。
    点击“Get My Info”,应该会在文本框中显示本站的信息。

    进而,若把Lrc歌词数据放入Js脚本文件中(不是直接更改文件扩展名),就可实现跨域获取Lrc歌词数据了。

上一篇:Ajax Hacks chm文件与源代码 下载

栏    目:AJAX

下一篇:找到一款不错的基于AJAX留言板源码(PHP版、ASP版)提供下载了

本文标题:浏览器跨域获取Lrc歌词数据的解决办法

本文地址:www.jiaocheng88.com.cn/AJAX/27598.html

您可能感兴趣的文章

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:584415406 | 邮箱:584415406#qq.com(#换成@)

Copyright © 2015-2020 小白站长教程网 版权所有 苏ICP备20040415号-3