js原生跨域--用script标签实现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js原生跨域--用script标签实现相关的知识,希望对你有一定的参考价值。

刚刚从培训班学习完,总想写一下东西,自从进入了这个院子,每次出现问题,总是能找到一些答案,给我一些帮助. 

作为新手,就写一下简单的吧,院子里面有很多大牛, 说句实话,他们的很多代码我都看不懂. 我就写一下新手看的懂得吧, 多说一句,我觉得大牛写的代码应该通俗易懂才可以.

代码非常的简单,但是写的过程中,仍然发生了一些小错误,最后还是解决了.

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>手写js跨域</title>
 6 </head>
 7 <body>
 8 <button>search</button>
 9 <input type="text"/>
10 <textarea name="" id="" cols="30" rows="10"></textarea>
11 </body>
12 </html>
13 <script>
14 
15     var head=document.getElementsByTagName(‘head‘)[0];
16     var text=document.getElementsByTagName(‘input‘)[0];
17     var textarea=document.getElementsByTagName(‘textarea‘)[0];
18     var bt=document.getElementsByTagName(‘button‘)[0];
19 
20     bt.onclick=function(){
21         var _script=document.createElement(‘script‘);
22         head.appendChild(_script);
23         _script.src=‘https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd=‘
24                 +text.value+
25                 ‘&json=1&p=3&sid=1443_20972_18241_21119_21191_21160_20929&req=2&csor=1&cb=getdata‘;    //百度的一个借口,用getdata函数把数据返回
26     }
27    function getdata(data){
28        console.log(data);
29       for(i in data.g){
30           console.log(data.g[i].q);
31           textarea.value+=data.g[i].q+‘\n‘;
32       }
33    }
34 </script>
35   
36 
37  

以上是关于js原生跨域--用script标签实现的主要内容,如果未能解决你的问题,请参考以下文章

JS怎么用代码实现在body最后插入一个script标签?

原生js实现简单JSONP

原生javascript实现jsonp的封装

jsonp实现跨域请求

原生JS简单封装JSONP跨域获取数据

JSONP实现跨域