> 웹 프론트엔드 > JS 튜토리얼 > JavaScript는 Internet_javascript 기술과 다르게 플래시 개체를 얻습니다.

JavaScript는 Internet_javascript 기술과 다르게 플래시 개체를 얻습니다.

WBOY
풀어 주다: 2016-05-16 16:51:48
원래의
974명이 탐색했습니다.

js가 플래시 객체를 얻는 것과 관련하여 인터넷에 많은 예가 있으며 나 또한 많은 방법을 시도했습니다.
모두 사용할 수 있지만 가장 원하는 것이 없습니다.
나중에 Baidu를 살펴보니 매우 표준화되어 있고 모든 상황을 고려했지만 코드의 양이 낙관적이지는 않습니다. 🎜> 이전 코드는 전후가 거의 20라인이고, 압축후에는 864바이트가 있습니다.

그래서 이 글이 탄생했습니다.
인터넷에서 수집한 몇 가지 만족스러운 방법을 테스트하고 공유하고 싶습니다.
또한 호환성 테스트에 도움을 주시길 바랍니다. 호환되지 않는 부분이 있으면 아래에 메시지를 남겨주시면 코드를 테스트하고 수정할 수 있습니다.
아래 코드를 살펴보겠습니다.

코드 복사 코드는 다음과 같습니다.
function getFlashMovieObject( movieName ) {
if (window .document[movieName]) {
return window.document[movieName];
}
if (navigator.appName.indexOf("Microsoft Internet") == -1) {
if (document .embeds && document.embeds[movieName])
return document.embeds[movieName]
} else { // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
return document.getElementById(movieName);
}
}

이 방법은 문서에서 값을 얻은 경우 직접 반환됩니다. 아니, 저자는 대체물과 호환되는 삽입을 자주 사용합니다.
물론 IE에는 특별한 처리가 필요하지만 여기 저자는 getElementById를 자주 사용하는 반면 다른 곳에서는 window를 더 자주 사용합니다.
물론 getElementById가 정확합니다. 삽입에는 이름만 있고 ID는 없기 때문에 객체의 ID를 사용합니다.

코드 복사 코드는 다음과 같습니다.
var flash = document["myFlash"] || window ["myFlash"];

이 방법은 비교적 간결하고 명확하므로 너무 장황하지는 않습니다.

코드 복사 코드는 다음과 같습니다.
var flash = document["myFlash"] ;

내 컴퓨터의 다양한 브라우저 가상 머신에서 IE6-10이 모두 테스트를 통과했기 때문에 여러 버전을 읽은 후 직접 작성했습니다.
물론 공식적으로 사용된다면 1번을 선택하겠지만, 가끔 특별한 상황에서 여러 브라우저와 호환될 필요가 없다면 이것을 고려해 볼 수 있습니다.

다음은 세 가지 방법으로 플래시 객체를 얻은 후 플래시를 제어하고 테스트하는 실제 예입니다.
테스트를 통과할 수 없다고 판단되는 경우, 브라우저 버전 번호와 통과할 수 없는 솔루션을 남겨주세요.
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿