溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

discuz解決手機(jī)端圖片顯示模糊的方法

發(fā)布時(shí)間:2020-08-11 10:24:53 來(lái)源:億速云 閱讀:583 作者:小新 欄目:建站服務(wù)器

discuz解決手機(jī)端圖片顯示模糊的方法?這個(gè)問(wèn)題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見到的。希望通過(guò)這個(gè)問(wèn)題能讓你收獲頗深。下面是小編給大家?guī)?lái)的參考內(nèi)容,讓我們一起來(lái)看看吧!

主要內(nèi)容:discuz如何解決手機(jī)端圖片顯示模糊問(wèn)題,主要內(nèi)容為discuz實(shí)現(xiàn)多圖上傳、圖片大圖顯示、圖片高質(zhì)量顯示discuz等功能,億速云原創(chuàng)首發(fā),轉(zhuǎn)載請(qǐng)注明!更多文章請(qǐng)關(guān)注億速云discuz專欄。

最終實(shí)現(xiàn)的效果圖

discuz解決手機(jī)端圖片顯示模糊的方法

實(shí)現(xiàn)多圖上傳

修改文件upload/template/default/touch/forum/post.htm  83行代碼

修改內(nèi)容:添加multiple屬性

<li style="padding:0px;">
   <a href="javascript:;" class="y" style="background:url(static/image/mobile/images/icon_photo.png) no-repeat;overflow:hidden;">
      <input type="file" name="Filedata" multiple="multiple" id="filedata" style="width:30px;height:30px;font-size:30px;opacity:0;">
   </a>
</li>

修改js文件upload/template/default/touch/forum/post.htm  206行

修改內(nèi)容:直接復(fù)制過(guò)去即可

for (var i=0;i<this.files.length;i++ ) {
    var file_data = [];
    file_data.push(this.files[i]);
    $.buildfileupload({
        uploadurl:'misc.php?mod=swfupload&operation=upload&type=image&inajax=yes&infloat=yes&simple=2',
        files:file_data,
        uploadformdata:{uid:"$_G[uid]", hash:"<!--{eval echo md5(substr(md5($_G[config][security][authkey]), 8).$_G[uid])}-->"},
        uploadinputname:'Filedata',
        maxfilesize:"2000",
        success:uploadsuccess,
        error:function() {
            popup.open('上傳失敗,請(qǐng)稍后再試', 'alert');
        }
    });
}

測(cè)試多圖上傳:這個(gè)時(shí)候就已經(jīng)實(shí)現(xiàn)了多圖上傳了

discuz解決手機(jī)端圖片顯示模糊的方法

圖片大圖顯示

修改文件upload/template/default/touch/forum/discuzcode.htm   90行

修改內(nèi)容:把83改為330

$fix = count($post[imagelist]) == 1 ? 140 : 330;

修改完效果:對(duì)于上面的這個(gè)330應(yīng)該就是顯示圖片的寬度的。但是這是在一個(gè)機(jī)器里邊測(cè)試的,其他機(jī)型肯定有問(wèn)題。而且圖片已經(jīng)模糊的不能看了。

discuz解決手機(jī)端圖片顯示模糊的方法

圖片高質(zhì)量顯示

我們打開pc端,發(fā)現(xiàn)pc端的圖片竟然用的是原圖

discuz解決手機(jī)端圖片顯示模糊的方法

在看看移動(dòng)端的圖片發(fā)現(xiàn)圖片的顯示規(guī)則使用他自己的規(guī)則,這個(gè)規(guī)則后邊咔咔會(huì)在寫到

discuz解決手機(jī)端圖片顯示模糊的方法

移動(dòng)端的圖片顯示質(zhì)量真是讓人堪憂??!

修改文件upload/template/default/touch/forum/viewthread.htm  174行-183行修改為

<!--{if $_G['forum_thread']['subjectImage']}-->
<!--{loop $_G['forum_thread']['subjectImage'] $imageData}-->
<img src="data/attachment/forum/$imageData[attachment]" alt="">
<!--{/loop}-->
<!--{/if}-->

修改PHP文件upload/source/module/forum/forum_viewthread.php:在20行后加上即可

# 主題圖片
$subjectImage = DB::fetch_all("select * from pre_forum_attachment where tid= '$tid' limit 1");
$subject_tableId = $subjectImage[0]['tableid'];
$subjectData = DB::fetch_all("select attachment from pre_forum_attachment_$subject_tableId where tid= '$tid'");
$thread['subjectImage'] = $subjectData;

然后實(shí)現(xiàn)最終效果

discuz解決手機(jī)端圖片顯示模糊的方法

對(duì)在PHP文件里邊添加的代碼做一個(gè)簡(jiǎn)答的解釋

對(duì)于上傳的圖片都會(huì)進(jìn)入一個(gè)索引表

discuz解決手機(jī)端圖片顯示模糊的方法

然后這個(gè)索引表會(huì)根據(jù)一定的規(guī)則把圖片存進(jìn)對(duì)應(yīng)的表中

discuz解決手機(jī)端圖片顯示模糊的方法

# 主題圖片
$subjectImage = DB::fetch_all("select * from pre_forum_attachment where tid= '$tid' limit 1");
$subject_tableId = $subjectImage[0]['tableid'];
$subjectData = DB::fetch_all("select attachment from pre_forum_attachment_$subject_tableId where tid= '$tid'");
$thread['subjectImage'] = $subjectData;

這段代碼其實(shí)就是根據(jù)主題id查詢這個(gè)主題的圖片是在哪個(gè)索引表存著。

或者到主題圖片的附件表后根據(jù)主題id獲取主題圖片

然后存進(jìn)一個(gè)全局變量即可

然后前端拿著這個(gè)變量進(jìn)行循環(huán)顯示即可

感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)discuz解決手機(jī)端圖片顯示模糊的方法大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI