Page 81 - JavaScript修炼之道
P. 81

任务31  跨域“Ajax”(方法收集1)              71


                   使用CORS兼容的XMLHttpRequest


                    server/crossdomain1/crossdomain1.js

                   new Ajax.Updater({ success: 'responses' }, this.href, {
                     method: 'get', insertion: 'bottom'
                   });
                   使用服务器端协议


                    server/crossdomain1/crossdomain1.js

                   new Ajax.Updater({ success: 'responses' }, 'ssp.php', {
                     method: 'get', parameters: { uri: this.href }, insertion: 'bottom'
                   });

                   同时使用动态生成的表单和<iframe>

                    server/crossdomain1/crossdomain1.js

                   var warp = new Element('iframe', { name: '__blackhole' });
                   warp.setStyle('width: 0; height: 0; border: 0');
                   document.body.appendChild(warp);
                   warp.observe('load', function() {
                     $('responses').insert('<p>OK, posted.</p>');
                   });
                   var form = new Element('form', { method: 'post', action: this.href,
                     target: '__blackhole' });
                   form.submit();
                   使用得到204响应的动态生成的表单

                    server/crossdomain1/crossdomain1.js

                   var form = new Element('form', { method: 'post', action: this.href });
                   form.submit();
                   Element.insert.defer('responses', '<p>OK, posted.</p>');

               相关任务

                     任务32
   76   77   78   79   80   81   82   83   84   85   86