2010-06-23 4 views
2

방화범이 나에게 다음과 같은 오류를주고있다 정의되지 않은 : 나는 액티브 X는 마이크로 소프트 프레임 워크와 그 대부분이 IE에서 사용되는 읽었습니다ActiveX 객체는

ActiveXObject is not defined 
[Break on this error] var xmlhttp = new ActiveXObject("MSXML2.XmlHttp"); 

. 내가 일하는 곳의 모든 내부 웹 페이지는 IE 6 용으로 특별히 제작되었지만 이제는 Firefox와 Safari 및 다른 주요 브라우저로 이동하는 데 필요한 것이 무엇인지 연구하고 싶습니다. Firefox.

그럼 Mac에서 (우선)으로 작동하려면 ActiveX 및 Firefox 및 Safari에서 어떻게 작동합니까? 몇 가지 플러그인이 있다는 것을 알고 있습니까? FF ActiveX 호스트와 같이 일을 더 쉽게 만들었지 만 프로그래밍 방식의 솔루션이 있습니까?

아무런 해결책이 없으면이 문제는 Java에서 ActiveX 조각을 다시 쓸 수 있습니까?

+0

유진은 좋은 포인트가 - 내가 어떻게 든 당신이 어떤 사용자 정의'ActiveXObject'를 사용하고 있다고 가정한다. 아니면 XmlHttp 객체로 제한되어 있습니까? –

답변

5

나는 웹 사람이 아니에요 그러나 당신의 웹 페이지를 AJAX를 사용하는 것처럼 보인다.

문제는 다른 브라우저에서 AcitveX를 사용하지 않기 때문입니다. 이 같은

시도 뭔가 :

var xmlhttp; 
if (window.XMLHttpRequest) { 
    xmlhttp = new XMLHttpRequest(); 
} else { 
    try { 
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); 
    } catch (e) { 
    try { 
     xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
    } catch (e) { 
     xmlhttp = false; 
    } 
    } 
} 
+0

이것은 오류를 제거한 것처럼 보이지만, 나중에 코드에서'xmlhttp.Open ("GET", PageURL, false); – Hristo

3

IE 지원 외에도 거의 모든 관련 브라우저의 플러그인 -API는 NPAPI입니다. this introduction.

ActiveX를 적용하기위한 투명 프로그래밍 방식, 특히 Windows 전용 기술에 대한 인식이 없습니다.

FireBreath 프로젝트는 NPAPI와 함께 작업하는 것을 용이하게 할뿐만 아니라 NPAPI와 ActiveX를 통해 추상화 레이어를 제공하기 때문에 대부분의 중앙 부품을 한 번만 작성해야한다는 생각이들 수도 있습니다.
면책 조항 : 나는이 프로젝트의 소유자 중 하나 그래서 가장 치우친)

+0

:) 당신의 의견이 편향되어 있다면 상관 없어요 :) FireBreath는 멋진 프로젝트처럼 보입니다. 그리고 심도있게 살펴볼 것입니다. 답장을 보내 주셔서 감사합니다 ... 지금 할 일이 있습니다. – Hristo

+0

.. Mac 용 플러그인 프로젝트를 만들었고 플러그인을 테스트하려고했지만 Firefox에서 누락 된 플러그인을 설치해야한다는 메시지가 나타납니다. 그것은 적절한 플러그인이 없다는 것을 알려주므로 어떻게 플러그인을 파이어 폭스와 함께 사용할 수 있습니까? – Hristo

+0

@Hristo : 'MyProject.plugin'을 설치 했습니까? '~/Library/Internet \ Plug-Ins /'에 넣으시겠습니까? 당신이 구글 그룹에 신경 쓰지 않는다면, fb-dev 메일 링리스트는 나보다 더 많은 사람들로부터 꽤 빠른 응답을 얻습니다. :) –