1 <SCRIPT> 2 / * 3。 JSONP({ 4 URL: 'HTTP:// localhostを:3000 /'、 5。 データ: ''、 6。 成功:関数(データ){ 7 にconsole.log(データ); 8 } 。9 }) 10 * / 11 12である (関数(W){ 13は、 / * * 14 JSONPが達成* 15 オプション* @param {オブジェクト} 16 * / 17 関数はJSONP(オプション){ 18は // 1マウントグローバル関数 19 w.getData = option.success; 20はある // 2.処理のURLリンク 21れ option.url = option.url + 'がのgetDataにコールバックを=?' ; 22れる // 3.スクリプトタグ挿入体を作成 23ある VAR scriptEle =のdocument.createElement ( 'スクリプト' ); 24 scriptEle.src = option.url; 25 document.body.appendChild(scriptEle); 26である } 27 w.jsonp = JSONP; 28 })(ウィンドウ) 29 </スクリプト> 30 <SCRIPT> 31は、 JSONP({ 32 URL: 'のhttp:// localhostを:3000 /' 、 33の 成功:関数(データ){ 34 にconsole.log(データ)。 35 アラート( '111' )。 36 } 37 }); 38 39 JSONP({ 40 URL: 'のhttp:// localhostを:3000 /' 、 41の 成功:関数(データ){ 42 にconsole.log(データ); 43 アラート( '222' ); 44 } 45 }); 46 47 JSONP({ 48 URL: 'のhttp:// localhostを:3000 /' 、 49の 成功:機能(データ){ 50 はconsole.log(データ); 51 アラート( '333' )。 52 } 53 }); 54 </ SCRIPT>
結果が発生する複数の呼び出しをカバー
1 <SCRIPT> 2 (関数(W){ 3 / * * 4 * JSONP達成 5 * @param {オブジェクト}オプション 。6 * / 7 関数JSONP(オプション){ 8人の // 0の生成機能異なる名前 。9 VAR .. callBackName = 'itLike' + Math.random()のtoString()SUBSTR(2)+ Math.random()のtoString()SUBSTR(2 .. ); 10 // はconsole.log(callBackName); 11 // 1。マウントグローバル関数 12である W [callBackName] = option.success; 13である // 2 URLリンク処理 14 option.url = option.url + '?コールバック=' + callBackName。 15 // 3创建スクリプト标签插入体 16 VAR scriptEle =のdocument.createElement( 'スクリプト' ); 17 scriptEle.src = option.url。 18 document.body.appendChild(scriptEle)。 19 } 20 w.jsonp = JSONP。 21 })(ウィンドウ) 22 </スクリプト> 23 <スクリプト> 24 JSONP({ 25 URL: 'のhttp:// localhostを:3000 /' 、 26 成功:機能(データ){ 27 にconsole.log(データ)。 28 警報( '111' )。 29 } 30 }); 31 32 JSONP({ 33 URL: 'のhttp:// localhostを:3000 /' 、 34の 成功:関数(データ){ 35 にconsole.log(データ); 36 アラート( '222' ); 37 } 38 }); 39 40 JSONP({ 41 URL: 'のhttp:// localhostを:3000 /' 、 42 成功:機能(データ){ 43 にconsole.log(データ)。 44 アラート( '333' )。 45 } 46 }); 47 </ SCRIPT>
1 <SCRIPT> 2 (関数(W){ 3 / * * 4 * JSONP達成 5 * @param {オブジェクト}オプション 。6 * / 7 関数JSONP(オプション){ 8人の // 0の生成機能異なる名前 。9 VAR .. callBackName = 'itLike' + Math.random()のtoString()SUBSTR(2)+ Math.random()のtoString()SUBSTR(2 .. ); 10 // はconsole.log(callBackName); 11 // 1。マウントグローバル関数 12である [callBackName] = W 関数(データ){ 13であります option.success(データ); 14 // スクリプトタグ削除し 15 document.body.removeChild(scriptEleする); 16 }; 17 // 2処理URLリンク 18は、 '?コールバック=' + option.url = option.url + callBackName ; 19 // スクリプトタグ挿入体の作成 20は VAR scriptEle =のdocument.createElement( 'スクリプト' ); 21である scriptEle.src = option.url; 22である document.body.appendChild(scriptEle); 23である } 24 w.jsonp = JSONP; 25 })(窓); 26 </スクリプト> 27 <スクリプト> 28 JSONP({ 29 URL: 'のhttp:// localhostを:3000 /' 、 30の 成功:関数(データ){ 31 にconsole.log(データ); 32 アラート( '111' ); 33 } 34 }); 35 36 JSONP({ 37 URL: 'のhttp:// localhostを:3000 /' 、 38の 成功:関数(データ){ 39 にconsole.log(データ); 40 アラート( '222'); 41 } 42 }); 43 44 JSONP({ 45 URL: 'のhttp:// localhostを:3000 /' 、 46の 成功:関数(データ){ 47 にconsole.log(データ); 48 アラート( '333' ); 49 } 50 }); 51 </ SCRIPT>