> 웹 프론트엔드 > HTML 튜토리얼 > 플래시 플러그인을 사용하여 PC의 카메라를 호출하여 TML 페이지_HTML/Xhtml_웹페이지 제작에 삽입하는 방법

플래시 플러그인을 사용하여 PC의 카메라를 호출하여 TML 페이지_HTML/Xhtml_웹페이지 제작에 삽입하는 방법

WBOY
풀어 주다: 2016-05-16 16:37:05
원래의
1526명이 탐색했습니다.
머리말

이 글을 쓴 이유는 주로 팀장이 제기한 새로운 요구 사항 때문입니다. 바로 사진을 찍는 기능을 구현하기 위해 브라우저를 사용하여 컴퓨터의 카메라를 호출해야 한다는 것입니다. . 인터넷에서 많은 정보를 확인하다가 이런저런 이유로 결국 PC의 카메라를 호출하기 위해 플래시 플러그인을 사용하기로 결정했습니다. 물론 이 요구 사항은 B/S 아키텍처를 기반으로 하기 때문에 프런트엔드 HTML 페이지에 어떻게 삽입할지 고민 중입니다.

여담

물론 여기서는 encapsulation을 고려하지 않았습니다. 주로 구현을 먼저 하고 후속 작업은 업무에 따라 추상화하여 일반으로 encapsulation합니다. 구성 요소. 좋습니다. 더 이상 고민하지 말고 핵심 사항에 집중하겠습니다.

삽입 플러그인

객체 및 삽입 태그 사용

코드 표시

코드 복사
코드는 다음과 같습니다.

< ;div 스타일 ="margin-top:-30px;margin-left:-120px;">
codebase="http :// fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0"
width="490" height="390" id="제목 없음-1 " align= "middle">


< param name="quality" value="high" />

type="application/x-shockwave-flash" 플러그인 페이지=" http://www.macromedia.com/go/getflashplayer" />



이 방법은 Object와 Embed 태그가 사용되는 것을 볼 수 있는데, object의 많은 매개변수와 embed의 많은 속성이 반복되는 것을 볼 수 있습니다. 브라우저 호환성, 일부 브라우저는 객체 지원, 일부는 삽입 지원을 지원하므로 Flash 매개변수를 수정하려는 경우 두 위치를 모두 변경해야 합니다. 이 방법은 호환성 문제 없이 Flash의 기능을 최대한 보장하는 Macromedia의 공식 방법이었습니다.

그런데 지금 보면 여전히 문제가 크다.

우선 호환성을 위해 삽입한 embed 태그가 W3C 규격을 준수하지 않아 검증에 실패합니다. 물론 규칙이나 규정에 관심이 없다면 그것은 또 다른 문제입니다.

둘째, 여러 가지 이유로 Microsoft는 sp2 이후 IE의 ActiveX 사용 모드를 제한했습니다. 즉, 페이지의 ActiveX에 가상 상자가 있어 사용자가 정상적인 상호 작용을 위해 한 번 클릭해야 합니다. . Flash는 웹 페이지에 ActiveX로 포함되어 있으므로 JS를 통해 Flash를 포함해야만 이 문제를 해결할 수 있습니다.

또한 플래시 버전 감지가 되지 않습니다. 브라우저의 플래시 플러그인 버전이 충분하지 않거나, swf 파일이 정상적으로 표시되지 않거나, ActiveX 설치 확인 상자가 나타나는 경우 - 이 상자가 나타납니다. 많은 사용자에게 짜증나는 말입니다.

객체 태그만 사용

코드 표시

코드 복사
코드는 다음과 같습니다.


>< param name="cam" value="c.swf?path=cam.swf" />
width="550" height="400 " alt= "" />



이 방법은 실제로 Flash인 Object 태그만 사용합니다. satay.embed 태그가 없기 때문에 검증을 통과할 수 있습니다. 브라우저 호환성도 거의 완벽해 보이지만

우선 문제가 있습니다. 모두, 로드하려면 홀더 SWF가 필요합니다. Flashvar를 통해 매개변수를 전달하거나 페이지의 JS와 상호 작용해야 하는 경우 대상 SWF가 매우 번거롭습니다.

두 번째로. , 첫 번째 방법과 마찬가지로 버전 감지 없이 ​​ActiveX 프롬프트 상자가 나타납니다.

이번에도 일부 하위 버전 브라우저(예: 하위 버전의 Safari 등)에서는 이 방법에 동의하지 않습니다.


삽입 태그만 사용
코드 표시


코드 복사 코드는 다음과 같습니다.


<삽입 id="cam" src="cam.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="450" ​​​​height="350" name="웹캠" align= "middle" wmode="transparent"allowscriptaccess="always"allowfullscreen="false" type="application/x-shockwave-flash"pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars= "width =490&height=390&objid=cameradialog">


이 방법은 비교 효과 측면에서 여전히 사용됩니다. 매우 좋습니다. 브라우저 호환성도 꽤 좋고, 모든 것을 로드할 수 있습니다. 물론, embed 태그는 W3C 규격을 따르지 않으므로 이 방법은 권장되지 않습니다.
먼저 JS 스크립트가 포함된 SWFObject 플러그인 패키지를 다운로드해야 합니다. 이것이 가져와야 하는 스크립트 파일입니다. 또한 모방할 수 있는 두 개의 HTML 예제도 포함되어 있습니다. 물론 SWFObject 웹사이트로 이동하여 자세한 내용을 알아볼 수도 있습니다. 코드 표시





코드 복사

코드는 다음과 같습니다.
< ;span style="font-family:Microsoft YaHei;">




코드 복사

코드는 다음과 같습니다.

대체 콘텐츠


;!--< ![endif]-->




렌더링




결론

이러한 방법을 비교해 보면 JS 임베딩 방법을 사용하여 Flash 플러그인을 로드하는 것을 선호합니다. 이 방법은 Flash의 모든 기능을 보장할 뿐만 아니라 구현되었지만 모든 브라우저에서 사용할 수 있습니다. 브라우저의 호환성도 좋고, JS는 더 확장된 기능도 제공할 수 있으며, 더 중요한 것은 불필요한 중복 코드를 줄여 더 많은 사람들이 재사용할 수 있다는 것입니다.

플러그인 다운로드 주소: SWFObject
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿