導航:首頁 > APP軟體 > js仿微信圖片瀏覽

js仿微信圖片瀏覽

發布時間:2022-12-15 05:04:07

1. js判斷是否是微信瀏覽器方法總結

if(navigator.userAgent.indexOf("MicroMessenger")>-1){
alert("這是微信內置瀏覽器");
}else{
alert("這不是微信內置瀏覽器");
}

2. 用HTML5做一個類似於微信聯系人的一個demo,遇到一點問題

touchMove 要結合使用touchstar,touchend進行判斷的。
沒有做過類似的東西,但是下面的是仿微信圖片瀏覽的代碼,寫了注釋,希望對你有點幫助!
<script>

function imgreset(){
$(this).css3Animate({
width: imgoldw+"px",
//x:0,
//y:0,
time: "0ms",
callback: function () {
pagex1_s=null;pagey1_s=null;pagex2_s=null;pagey2_s=null;pagex1_e=null;pagey1_e=null;
pagex2_e=null;pagey2_e=null;pagexm1_s=null;pageym1_s=null;pagexm1_e=null;pageym1_e=null;
dm=0;dn=0;
imgneww=imgoldw
}
});
}
var imgoldw=320;//獲取圖片寛度
var imglength=$(".imgbox").length;//獲取圖片個數
var demos = document.getElementById("container"),
spirit, startScale, startRotation;
var dm=0,dn=0,imgneww=imgoldw,ismove=false,pic_c=0;
var body_w=$("body").width();
var body_h=$("body").height();
var pagex1_s,pagey1_s,pagex2_s,pagey2_s,pagex1_e,pagey1_e,pagex2_e,pagey2_e,pagexm1_s,pageym1_s,pagexm1_e,pageym1_e;
function touchStart(e) {
//e.stopPropagation();
e.preventDefault();
if(e.touches.length == 1){
ismove=true;
var touch1 = e.touches[0];
pagexm1_s = touch1.pageX;
pageym1_s = touch1.pageY;

}
if (e.touches.length == 2){

var touch1 = e.touches[0];
pagex1_s = touch1.pageX;
pagey1_s = touch1.pageY;
var touch2 = e.touches[1];
pagex2_s = touch2.pageX;
pagey2_s = touch2.pageY;
left = Math.min(pagex1_s, pagex2_s),
top = Math.min(pagey1_s, pagey2_s),
width = Math.abs(pagex1_s - pagex2_s),
height = Math.abs(pagey1_s - pagey2_s);
}

}
function touchMove(e){
//e.stopPropagation();
e.preventDefault();
if (ismove&&e.touches.length == 1){
//單點觸摸

var touch1 = e.touches[0],
pagexm1_e = touch1.pageX,
pageym1_e = touch1.pageY,

//移動了多少
dx=pagexm1_e-pagexm1_s,
dy=pageym1_e-pageym1_s;
//是多少
dm=dx+dm;
dn=dy+dn;

if(imgneww==imgoldw){

$(this).css3Animate({
x:dm,
//y:dn,
time: "0ms",
callback: function () {
}
});

//如果圖未放大,則執行翻頁
}else{
//如果圖片已經被放大,則可以拖動
$(this).css3Animate({
x:dm,
y:dn,
time: "0ms",
callback: function () {
//記錄新位置
}
});
}
pagexm1_s=pagexm1_e,pageym1_s=pageym1_e;
}
if (e.touches.length == 2){
//多點觸摸
var touch1 = e.touches[0];
pagex1_e = touch1.pageX;
pagey1_e = touch1.pageY;
var touch2 = e.touches[1];
pagex2_e = touch2.pageX;
pagey2_e = touch2.pageY;
//計算兩點開始距離 old
var oldx=Math.abs(pagex1_s-pagex2_s),
oldy=Math.abs(pagey1_s-pagey2_s),
//計算兩點開始距離 new
newx=Math.abs(pagex1_e-pagex2_e),
newy=Math.abs(pagey1_e-pagey2_e);

if(oldx>newx&&oldy>newy){
var imgw=$(this).width();//獲取圖片寛度
resizex=oldx-newx;//縮小多少
var resizey=oldy-newy;//縮小多少
if(imgw>imgoldw){
$(this).css3Animate({
width: imgneww-resizex+"px",
x:dm,
y:dn,
time: "0ms",
callback: function () {
}
});
imgneww=imgneww-resizex;
};
}else{

var imgw=$(this).width();//獲取圖片寛度
var resizex=Math.abs(oldx-newx);
var resizey=Math.abs(oldy-newy);//縮小多少
if(imgw<640){
$(this).css3Animate({
width: imgneww+resizex+"px",
x:dm,
y:dn,
time: "0ms",
callback: function () {
}
});
imgneww=imgneww+resizex;
}
}
}

pagex1_s=pagex1_e,pagey1_s=pagey1_e,pagex2_s=pagex2_e,pagey2_s=pagey2_e;

}

function touchEnd(e) {
e.preventDefault();
var imglength=$(".imgbox").length;
var id=parseInt($(this).attr("id").substr(9));
if(ismove&&imgneww==imgoldw&&dm<0&&Math.abs(dm)>body_w/2&&id!=imglength-1){

$.ui.loadDiv('#my_photos_'+(id+1),false,false,'flip');
$(this).css3Animate({
x:0,
time: "0ms",
callback: function () {
dm=0;
}
});

}else if(ismove&&imgneww==imgoldw&&dm>0&&Math.abs(dm)>body_w/2&&id!=0){
$.ui.loadDiv('#my_photos_'+(id-1),false,false,'flip');
$(this).css3Animate({
x:0,
time: "0ms",
callback: function () {
dm=0;
}
});
}else{
if(ismove&&imgneww==imgoldw){

$(this).css3Animate({
x:0,
time: "0ms",
callback: function () {
dm=0;
}
});
}

}
ismove=false;

}

function gestureEnd(e) {
e.preventDefault();
if (!spirit) return;
canvas.removeChild(spirit);
spirit = null;
startScale = null;
startRotation = null;
}
/* $(".imgbox img").bind("touchstart", touchStart, false);
$(".imgbox img").bind("touchmove", touchMove, false);
$(".imgbox img").bind("touchend", touchEnd, false);
$(".imgbox img").bind("gestureend", gestureEnd, false);
$(".imgbox img").bind("tap", imgreset, false);
*/
</script>

3. 在微信中打開的網頁里的js怎麼能正常執行

正常執行具體如下:

  1. 以下是一段示例代碼,注釋中表明了通過JS如何判斷是否在微信瀏覽器打開,是否在QQ空間瀏覽器,是否在新浪微博打開。當然可以做得更完善一點,再加上判斷是在移動設備打開還是在PC端瀏覽器打開的,更加細分一點,可以判斷是在安卓系統的瀏覽器打開的還是IOS系統瀏覽器打開的。

4. 前端框架實戰:使用Vue.js實現微信界面

微信(wechat)是騰訊公司於2011年1月21日推出的一個為智能終端提供即時通訊服務的免費應用程序,微信支持跨通信運營商、跨操作系統平台通過網路快速發送免費(需消耗少量網路流量)語音簡訊、視頻、圖片和文字,同時,也可以使用通過共享流媒體內容的資料和基於位置的社交插件「搖一搖」、「漂流瓶」、「朋友圈」、」公眾平台「、」語音記事本「等服務插件。

截止目前為止,微信的活躍用戶已超九億,成為現在人們日常生活中必不可缺的通訊工具

而Vue.js是前端開發中一套構建用戶界面(user interface)的漸進式框架。Vue 從根本上採用最小成本、漸進增量(incrementally adoptable)的設計。Vue 的核心庫只專注於視圖層,並且很容易與其他第三方庫或現有項目集成。

今天,Hope老師就帶大家使用Vue.js實現微信界面!

Hope:5年H5開發經驗,擅長webApp,混合開發,項目管理。目前任職於某大數據公司,負責前端平台架構和混合開發。

《 前端實戰:Vue.js實現微信界面 》

預習資料
源碼

直播時間:2017年8月6日(周日)晚上8點

加 Q 群(613796295),加群暗號:「vue仿微信界面-」。已經在群里的同學關註上課通知就可以哦~

5. iOS Swift 仿微信朋友圈實現圖片點擊放大查看

效果圖:

scrollView 具有放大縮小的功能,實現圖片的放大與縮小的思路就是將imageView放在scrollView上,雙擊時調用scrollView的

來實現imageView的放大與縮小
Demo地址

1.兩個初始化方法

在初始化方法中初始化backScrollView 和承載imageView的scrollView,並給imageView和scrollView添加點擊手勢
2.承載imageView的scrollView設置代理方法

3.圖片的點擊放大手勢

4.出現時的動畫

5.消失時的動畫

6.調用

Demo地址

6. 用JS和html怎麼做出一個簡單的聊天窗口(類似微信)

單純js和html無法實現通訊,需要搭建後台服務與前端WebSocket比較容易實現。

7. 在微信內置瀏覽器里,為什麼有的圖片能雙擊打開,有的圖片則不行

雙擊可以打開的是調用了微信的內置圖片瀏覽器,比如在微信推送的圖文中。如果是自己開發的網頁如果不使用js調用微信內置圖片瀏覽器的話是無法雙擊打開查看的。

閱讀全文

與js仿微信圖片瀏覽相關的資料

熱點內容
寫企業論文數據來源從哪裡入手 瀏覽:243
如何看別人用APP幹了什麼 瀏覽:734
32位win10升級成64位 瀏覽:991
小米note還原出廠設置密碼 瀏覽:264
哪個看小說的app最火 瀏覽:366
網路用語保姆什麼意思 瀏覽:105
ajax調用javabean 瀏覽:491
iphone界面設計軟體 瀏覽:675
java測試驅動 瀏覽:281
如何找到手機下載文件 瀏覽:416
永劫無間錄制視頻在哪個文件夾 瀏覽:798
extjs當前界面刷新 瀏覽:1000
e3d安裝圖文教程 瀏覽:192
網路中的丟包和延遲是如何產生的 瀏覽:855
程序組件生成的文件名 瀏覽:575
報告裡面套用文件原內容標點符號 瀏覽:603
如何編程一行代碼 瀏覽:671
javahtml轉化pdf文件格式 瀏覽:106
編程軟體做的游戲怎麼拷到優盤 瀏覽:518
網路用語麻油什麼意思 瀏覽:929

友情鏈接