>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Разработка http://forum.mozilla-russia.org/viewforum.php?id=18 >кроссбраузерный XMLHttpRequest http://forum.mozilla-russia.org/viewtopic.php?id=4782 |
Rion > 30-08-2005 17:32:45 |
хочу реализовать нечто подобное.. Выделить код Код:if (window.XMLHttpRequest==null) { var jsimp=false; XMLHttpRequest = function () { if (ActiveXObject) { XmlHttp = new ActiveXObject("MSXML2.XMLHTTP.3.0"); if (XmlHttp) { return XmlHttp; } else jsimp=true; } if (jsimp) { this.open=function (bstrMethod, bstrUrl, varAsync) { this.onreadystatechange=null; this.url=bstrUrl; this.Method=bstrMethod; this.Async=varAsync; } } } } что это такое думаею понятно тем кто интересуется подобными вещами. в этом коде ошибка. вот это: return XmlHttp; не работает. как сделать? пробовал разные вараинты, но кроме как писать свои ф-ии и потом из них вызывать ф-ии из ActiveX объекта ничего лучше не придумал. такой варинт конечно тоже подходит, но легче было бы вернуть сылку на уже готовый объект |
Yan > 30-08-2005 18:36:44 |
Про кроссбраузерный XMLHTTPRequest достаточно подробно написано тут: http://xpoint.ru/know-how/JavaScript/YemulyatsiyaOtpravkiFormyiPriPomoschiXMLHttpRequest?7 |
ssn > 30-08-2005 23:22:54 |
...и тут |
Rion > 31-08-2005 09:46:18 |
первая ссылка не открывается по второй не то что мне надо. я хочу чтоб вот такая операция var x=new XMLHttpRequest() работала в любом браузере в независимости от того поддерживается она в таком виде или нет. |
ssn > 31-08-2005 10:43:54 |
Rion пишет
Почему не то что нужно?
Читайте пожалуйста внимательнее. |
Yan > 31-08-2005 10:50:10 |
У меня ссылка открывается. |
Rion > 31-08-2005 11:28:47 |
ssn пишет
это вы невнимательно читаете, то что я пишу. мне нужно чтоб мой класс при выаолнении new XMLHttpRequest выполнял new ActiveXObject("Microsoft.XMLHTTP"). для чего? для того чтоб скрипт написанный под фаерфокс с использованием new XMLHttpRequest пракрасно работал под IE всего лишь добавлением <script src="myxmlhttpreauest.js" type="text/javascript" /> где-нибудь в теле документа. Yan пишет
я к сожалению не могу открыть... может сквид мудрит.. " (110) Connection timed out" UPDATE: оставлю я эту затею (как первоначально замышлял). а замышлялось всё с целью уменьшения трафика, ну и хотелось сделать так чтоб можно было использовать где угодно, но код только разрастается при попытке эмулировать всё. да и на js в тех браузерах в которых XMLHttpReauest получится эмулировать не больше трети возможностей.. |
Skat > 31-08-2005 15:34:23 |
Блин ё-моё, нельзя что-ли так сделать?: Выделить код Код:function CreateXMLHTTP() { var xh = null; try { xh = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { xh = new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) { xh = null; } } if(!xh && typeof XMLHttpRequest != "undefined") { xh = new XMLHttpRequest(); } if (!xh) return false; return xh; } А там, где XmlHttpRequest не поддерживается, там он и не будет работать в любом случае. |
ssn > 31-08-2005 17:34:03 |
Ну вот - очень даже кроссбраузерный код у Skat'a |
Azathoth > 01-09-2005 02:37:08 |
ssn
По ходу через форточку. В смысле через скрытый iframe |
Rion > 01-09-2005 08:42:17 |
Athathoth пишет
знаю способы и получше. гугл в помощь если интересно. вот только не знаю как узнать хидеры 2 Skat,ssn: да блин, я уже сказал что хочу! читайте 6ой пост! вобщем я на это уже забил, тема закрыта |