jQuery Mobile 是創(chuàng)建移動(dòng) web 應(yīng)用程序的框架,兼容所有流行的手機(jī),平板電腦,電子閱讀器和桌面(瀏覽器)平臺(tái)。
成都創(chuàng)新互聯(lián)于2013年成立,先為南通等服務(wù)建站,南通等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為南通企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
所以說jQuery Mobile 是一個(gè)基于jQuery的用戶界面框架,屬于服務(wù)端語言,是沒有權(quán)限操作客戶端的。
要想實(shí)現(xiàn)保存圖片到手機(jī),只能是用戶在瀏覽器中自己點(diǎn)擊保存,方可以保存到客戶自己的手機(jī)里面。
[img]Ajax 本來就有緩存的
默認(rèn)情況下,請(qǐng)求總會(huì)被發(fā)出去,但瀏覽器有可能從他的緩存中調(diào)取數(shù)據(jù)。要禁止使用緩存的結(jié)果,可以設(shè)置cache參數(shù)為false。如果希望判斷數(shù)據(jù)自從上次請(qǐng)求后沒有更改過就報(bào)告出錯(cuò)的話,可以設(shè)置ifModified為true。
這個(gè)用jquery是無法實(shí)現(xiàn)的,需要用asp.net才能實(shí)現(xiàn)
using System.Net;
using System.IO;
using System.Drawing.Imaging;
/// summary
/// 下載遠(yuǎn)程圖片保存到本地
/// /summary
/// param name="savedir"本地保存路徑/param
/// param name="imgpath"遠(yuǎn)程圖片文件/param
/// returns/returns
public string downRemoteImg(string savedir,string imgpath)
{
if (string.IsNullOrEmpty(imgpath))
return string.Empty;
else
{
string imgName = string.Empty;
string imgExt = string.Empty;
string saveFilePath = string.Empty;
imgName = imgpath.Substring(imgpath.LastIndexOf("/"), imgpath.Length - imgpath.LastIndexOf("/"));
imgExt = imgpath.Substring(imgpath.LastIndexOf("."), imgpath.Length - imgpath.LastIndexOf("."));
saveFilePath = Server.MapPath(savedir);
if (!Directory.Exists(saveFilePath))
Directory.CreateDirectory(saveFilePath);
try
{
WebRequest wreq = WebRequest.Create(imgpath);
wreq.Timeout = 10000;
HttpWebResponse wresp = (HttpWebResponse)wreq.GetResponse();
Stream s = wresp.GetResponseStream();
System.Drawing.Image img;
img = System.Drawing.Image.FromStream(s);
switch (imgExt.ToLower())
{
case ".gif":
img.Save(saveFilePath + imgName, ImageFormat.Gif);
break;
case ".jpg":
case ".jpeg":
img.Save(saveFilePath + imgName, ImageFormat.Jpeg);
break;
case ".png":
img.Save(saveFilePath + imgName, ImageFormat.Png);
break;
case ".icon":
img.Save(saveFilePath + imgName, ImageFormat.Icon);
break;
case ".bmp":
img.Save(saveFilePath + imgName, ImageFormat.Bmp);
break;
}
img.Dispose();
s.Dispose();
return savedir + imgName;
}
catch
{
return imgpath;
}
}
}
使用方法:
如保存到本地的test目錄:
Response.Write(this.downRemoteImg("test", ""));
你的思路應(yīng)該錯(cuò)了,我給你梳理下吧:
用jquery.imgareaselect實(shí)際上主要是利用它幫你獲得預(yù)覽圖和剪裁數(shù)據(jù)。然后將數(shù)據(jù)發(fā)送后臺(tái)根據(jù)這些數(shù)據(jù)就可以從原始圖片中重新畫出你選擇部分的圖片信息了。
1,你異步上傳后將圖片訪問路徑設(shè)置到剪裁區(qū)img.src;
2,利用imgareaselect的回調(diào)函數(shù)拿到圖片引用img和選擇對(duì)象selection,從img拿到引用圖片width\height,selection拿到左上角的坐標(biāo)x1\y1,右下角的坐標(biāo)x2\y2,選擇區(qū)寬高width\height。
3,將2中拿到的數(shù)據(jù)發(fā)送到后臺(tái),后臺(tái)根據(jù)這些數(shù)據(jù)和原始圖片信息畫出選擇區(qū)的圖像。
你這個(gè)描述有點(diǎn)不清楚啊 , 分割圖片? 是把多個(gè)圖片的url分割開來么? 那你只要把全路徑保存下來就可以了啊
圖片既然能展示到前臺(tái)頁(yè)面,說明你的數(shù)據(jù)庫(kù)、工程里或后臺(tái)中某個(gè)路徑存在這張圖片,當(dāng)點(diǎn)擊的時(shí)候,取到這個(gè)圖片,然后用下載的方法下載就可以了