요구 사항을 이해하면 다음과 같이 나눌 수 있습니다.
(1) WeChat 휴대폰 사용자는 WeChat의 JSSDK를 사용할 수 있습니다.
(2) 이미지를 선택하고 JSSDK의 “chooseImage”를 사용합니다. 이미지 공유 시 로컬 주소를 공유할 수 없으므로 JSSDK의 “uploadImage”도 필요합니다.
(3) Moments에 공유하려면 JSSDK의 "onMenuShareTimeline"이 필요합니다.
함께 비즈니스 로직은 그림 4.5에 나와 있습니다.
그림 4.5 비즈니스 로직 구조 다이어그램
먼저 JSSDK 환경을 이 섹션의 디렉터리에 복사하고 index.html 파일과 imageSharing.js 파일을 생성합니다. 디렉터리 구조는 그림 4.6과 같습니다.
그림 4.6 섹션 4.2 디렉터리 구조
JSSDK 환경의 구성 파일을 수정합니다. 코드는 다음과 같습니다.
01 jsApiList: [ // 必填,需要使用的JS接口列表,所有JS接口列表见附录B 02 "chooseImage", 03 "previewImage", 04 "uploadImage", 05 "onMenuShareTimeline" 06 ] 07 //其他代码略
요구 사항에 따라 "id"가 "chooseImage"인 클릭 버튼을 만듭니다. 버튼을 클릭한 후 선택한 이미지의 컨테이너를 표시하려면 index.html 파일에 다음 코드를 추가하세요.
01 <!DOCTYPE html> 02 <html lang="en"> 03 <head> 04 <meta charset="UTF-8"> 05 <meta name="viewport" content="width=device-width, initial-scale=1.0, 06 minimum-scale=1, maximum-scale=1.0, user-scalable=no"> 07 <title>第4章 4.2节-实例:从手机相册中选照片然后分享</title> 08 <!--依赖文件:jQuery--> 09 <script src="./js/jquery-1.11.2.min.js?1.1.10"></script> 10 <!--依赖文件:微信的JSSDK源文件--> 11 <script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js?1.1.10"></script> 12 <!--依赖文件:coolie--> 13 <script src="./js/cookie.js?1.1.10"></script> 14 <!--JSSDK的环境--> 15 <script src="./js/wxJSSDK.js?1.1.10"></script> 16 <!--引入检测API的图像服务--> 17 <script src="imageSharing.js?1.1.10"></script> 18 <style> 19 input{ 20 width: 100%; 21 padding: 0.2em; 22 background-color: #5eb95e; 23 font-size: 1.4em; 24 background-image: linear-gradient(to bottom, #62c462, #57a957); 25 background-repeat: repeat-x; 26 color: #ffffff; 27 text-align: center; 28 text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); 29 border-radius: 0.3em; 30 } 31 </style> 32 </head> 33 <body> 34 <h1 id="">:)</h1> 35 <b style="font-size: 2em">实例:从手机相册中选照片然后分享,支持选择1张图片! 36 </b><br /><br /> 37 <p id="imageContainer" style="text-align: center;width: 100%"></p> 38 <p id="selectImg" style="color: #5eb95e;text-align: center">没有自定义分享图片</p> 39 <input type="button" value="请选择分享图片" id="chooseImage" /><br /><br /> 40 </body> 41 </html>
다음과 같이 imageSharing.js 파일에 비즈니스 코드를 추가하세요.
01 /* 02 函数名称:wxJSSDK.shareApi 03 函数功能:为wxJSSDK增加分享模块 04 参数: 05 shareList(Array) 必选项,待分享的API配置表 06 */ 07 wxJSSDK.shareApi = function(shareList){ 08 if(wxJSSDK.isReady){//wxJSSDK.isReady 查看微信JSSDK是否初始化完毕 09 10 //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 11 if(shareList.onMenuShareTimeline){ 12 var ParametersTimeline = shareList.onMenuShareTimeline; 13 wx.onMenuShareTimeline({ 14 title: ParametersTimeline.title, // 分享标题 15 link: ParametersTimeline.link, // 分享链接 16 imgUrl: ParametersTimeline.imgUrl, // 分享图标 17 success: function () { 18 // 用户确认分享后执行的回调函数 19 ParametersTimeline.success && ParametersTimeline.success(); 20 }, 21 cancel: function () { 22 // 用户取消分享后执行的回调函数 23 ParametersTimeline.cancel && ParametersTimeline.cancel(); 24 } 25 }); 26 } 27 28 }else{ 29 console.log("抱歉,wx没有初始化完毕,请等待wx初始化完毕,再调用分享服务。"); 30 } 31 } 32 /* 33 函数名称:wxJSSDK.imageApi 34 函数功能:为wxJSSDK增加图像服务 35 参数: 36 imageApi 图像API Object 配置 37 */ 38 wxJSSDK.imageApi = function(imageApi){ 39 if(wxJSSDK.isReady){//wxJSSDK.isReady 查看微信JSSDK是否初始化完毕 40 if(imageApi){ 41 42 imageApi.chooseImage && wx.chooseImage({//拍照或从手机相册中选图接口 43 success: function (res) { 44 imageApi.chooseImage.success && 45 imageApi.chooseImage.success(res); 46 } 47 }); 48 49 imageApi.previewImage && wx.previewImage({ // 预览图片接口 50 current: imageApi.previewImage.current, // 当前显示的图片链接 51 urls: imageApi.previewImage.urls // 需要预览的图片链接列表 52 }); 53 54 imageApi.uploadImage && wx.uploadImage({ // 上传图片接口 55 localId: imageApi.uploadImage.localId, // 需要上传的图片的本地ID, 56 由chooseImage接口获得 57 isShowProgressTips: imageApi.uploadImage.isShowProgressTips || 1, // 58 默认为1,显示进度提示 59 success: function (res) { 60 imageApi.uploadImage.success && 61 imageApi.uploadImage.success(res); 62 } 63 }); 64 65 imageApi.downloadImage && wx.downloadImage({//下载图片接口 66 serverId:imageApi.downloadImage.serverId, // 需要下载的图片的服务器端 67 ID,由uploadImage接口获得 68 isShowProgressTips: imageApi.downloadImage.isShowProgressTips || 1, // 69 默认为1,显示进度提示 70 success: function (res) { 71 imageApi.downloadImage.success && 72 imageApi.downloadImage.success(res); 73 } 74 }); 75 }else{ 76 console.log("缺少配置参数"); 77 } 78 }else{ 79 console.log("抱歉,wx没有初始化完毕,请等待wx初始化完毕,再调用图像接口服 80 务。"); 81 } 82 83 } 84 85 window.onload = function(){ 86 var chooseImageID, // 拍照或从手机相册中选图接口 87 shareImage, 88 uploadImage = function(back){ 89 wxJSSDK.imageApi({ // 上传图片··· 90 uploadImage:{ 91 localId:chooseImageID.toString(), 92 success:function(res){//临时access_token,上传图片成功之后,执行分 93 享操作 94 shareImage = 95 "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token= 96 eQv3HPwEFxwsw8cyh5O7DjaNOoGd4d-jYtG_c9uW-YbwUYxkMywh_O3LCC 97 ZtmX8ZWr8np0Q5CqAox7lghNkNuiNHU8M618jbRvcaLjQuHq8&media_id="+res.serverId; // 返回图片的服务器端ID 98 back && back(); 99 } 100 } 101 }); 102 }, 103 shareTimeline = function(){ 104 uploadImage(function(){ 105 wxJSSDK.shareApi({ // 分享图片··· 106 onMenuShareTimeline : { // 分享到朋友圈 107 title: "实例:从手机相册中选照片然后分享!", // 分享标题 108 link: 'http://weibo.com/xixinliang', // 分享链接 109 imgUrl: shareImage, // 分享图标 110 success: function () { 111 112 }, 113 cancel: function () { 114 115 } 116 } 117 }); 118 }); 119 }; 120 $("#chooseImage").click(function(){ 121 wxJSSDK.imageApi({ 22 chooseImage:{ 23 success:function(res){ 24 chooseImageID = res.localIds[0]; // 返回选定照片的本地ID列表, 25 localId可以作为img标签的src属性显示图片 26 $("#imageContainer").html("<img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/001/17c991ba38dceb9bfbf33b6cf0582a8e-2.png?x-oss-process=image/resize,p_40" class="lazy" style='width: 30%' 27 src='"+chooseImageID+"'>"); 28 $("#selectImg").html("已选择图片,请点击右上角分享到朋友圈按钮"); 29 shareTimeline(); 30 } 31 } 32 }); 33 }); 34 }
[코드 설명]
index.html 에서 그림 4.7과 같이 사용자 정의 이미지를 공유하는 버튼을 만들었습니다.
그림 4.8과 같이 공유 버튼을 클릭하고 JSSDK의 이미지 선택 API를 호출하여 사용자가 이미지를 선택할 수 있도록 합니다.
그림 4.7 사용자 정의된 사진 공유 UI
그림 4.8 사진 선택 후 UI
후에 "uploadImage"를 호출하여 사진을 업로드합니다.
업로드가 성공한 후 업로드 후 서버 "serverId"를 반환한 다음 멀티미디어 다운로드 API를 호출하고 이미지를 JSSDK 공유 API "onMenuShareTimeline"에 할당합니다.
사용자는 그림 4.9 및 그림 4.10과 같이 공유 효과를 볼 수 있습니다.
그림 4.9 Moments 편집 UI에 공유
그림 4.10 Moments에 사용자 정의 사진을 성공적으로 공유
위 내용은 WeChat 개발 실용 공유 기능의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

h5referstohtml5, apivotaltechnologyinwebdevelopment.1) html5introducesnewelements 및 dynamicwebapplications.2) itsupp ortsmultimediawithoutplugins, enovannangeserexperienceacrossdevices.3) SemanticLementsImproveContentsTructUreAndSeo.4) H5'Srespo

H5 개발에서 마스터 해야하는 도구 및 프레임 워크에는 vue.js, React 및 Webpack이 포함됩니다. 1.vue.js는 사용자 인터페이스를 구축하고 구성 요소 개발을 지원하는 데 적합합니다. 2. 복잡한 응용 프로그램에 적합한 가상 DOM을 통해 페이지 렌더링을 최적화합니다. 3. Webpack은 모듈 포장에 사용되며 리소스로드를 최적화합니다.

html5hassignificallytransformedwebdevelopmentbyintranticalticlementements, 향상 Multimediasupport 및 Improvingperformance.1) itmadewebsitessmoreaccessibleadseo 친환경적 인 요소, 및 .2) Html5intagnatee

H5는 시맨틱 요소 및 ARIA 속성을 통해 웹 페이지 접근성 및 SEO 효과를 향상시킵니다. 1. 컨텐츠 구조를 구성하고 SEO를 개선하기 위해 사용합니다. 2. Aria-Label과 같은 ARIA 속성은 접근성을 향상시키고 보조 기술 사용자는 웹 페이지를 원활하게 사용할 수 있습니다.

"H5"와 "HTML5"는 대부분의 경우 동일하지만 특정 시나리오에서는 다른 의미를 가질 수 있습니다. "HTML5"는 새로운 태그와 API를 포함하는 W3C 정의 표준입니다. "H5"는 일반적으로 HTML5의 약어이지만 모바일 개발에서는 HTML5를 기반으로 한 프레임 워크를 참조 할 수 있습니다. 이러한 차이를 이해하면 프로젝트 에서이 용어를 정확하게 사용하는 데 도움이됩니다.

H5 또는 HTML5는 HTML의 다섯 번째 버전입니다. 개발자에게 더 강력한 도구 세트를 제공하여 복잡한 웹 애플리케이션을보다 쉽게 만들 수 있습니다. H5의 핵심 기능에는 다음이 포함됩니다. 1) 웹 페이지에 그래픽 및 애니메이션을 그리는 요소; 2) 웹 페이지 구조를 SEO 최적화에 명확하고 도움이되는 시맨틱 태그 등; 3) GeolocationApi 지원 위치 기반 서비스와 같은 새로운 API; 4) 호환성 테스트 및 폴리 필 라이브러리를 통해 크로스 브라우저 호환성을 보장해야합니다.

H5 링크를 만드는 방법? 링크 대상 결정 : H5 페이지 또는 응용 프로그램의 URL을 가져옵니다. HTML 앵커 작성 : & lt; a & gt; 태그 앵커를 만들고 링크 대상 URL을 지정합니다. 링크 속성 설정 (선택 사항) : 필요에 따라 대상, 제목 및 on 클릭 속성을 설정하십시오. 웹 페이지에 추가 : 링크가 나타나려는 웹 페이지에 HTML 앵커 코드를 추가하십시오.

H5 호환성 문제에 대한 솔루션에는 다음이 포함됩니다. 웹 페이지가 화면 크기에 따라 레이아웃을 조정할 수있는 반응 형 디자인을 사용합니다. 릴리스 전에 호환성을 테스트하기 위해 브라우저 크로스 브라우저 테스트 도구를 사용하십시오. PolyFill을 사용하여 이전 브라우저의 새로운 API를 지원합니다. 웹 표준을 따르고 효과적인 코드 및 모범 사례를 사용하십시오. CSS 프리 프로세서를 사용하여 CSS 코드를 단순화하고 가독성을 향상시킵니다. 이미지를 최적화하고 웹 페이지 크기를 줄이며로드 속도를 높이십시오. HTTPS를 통해 웹 사이트의 보안을 보장하십시오.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

WebStorm Mac 버전
유용한 JavaScript 개발 도구

맨티스BT
Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기
