亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 css 顯示圖像的一部分,但使用 img-responsive 進行響應

使用 css 顯示圖像的一部分,但使用 img-responsive 進行響應

精慕HU 2023-10-14 10:03:16
我創建了一個系統,用戶將上傳圖像,將其大小調整到一定寬度,然后用戶可以裁剪圖像(使用 imgAreaSelect 但升級到 Jcrop 以添加移動使用)。我這一切都工作正常。一旦用戶將 Jcrop 的選擇器移動到他們想要的位置并選擇保存按鈕,我就讓 jQuery 編寫一些花哨的 CSS 來顯示用戶想要的圖像部分(其余部分通過 隱藏)加上更多表單來添加照片信用和overflow: hidden其他有關照片的信息。這再次在桌面上運行得很好。該圖像在移動設備上為全尺寸且不響應,因此您看不到照片的大部分內容。我已經嘗試解決這個問題有一段時間了(除了禁用預覽照片)。有什么方法可以讓我的方法做出響應嗎?$(document).on('click','#save-image',function() {    //$('img.mobimg').imgAreaSelect({remove:true});    //$('#the-image').fadeOut();    //Write the preview image using variables from image selector.    $('#the-image').fadeOut().html('<div align="center"><div id="img" style="position: relative; width: '+$('#w').val()+'px; height: '+$('#h').val()+'px; overflow: hidden;">'+                            '<img src="'+theimg+'" id="finished-image" style="position: absolute; top: -'+$('#y1').val()+'px; left: '+$('#x1').val()+'px;">'+                          '</div></div><hr>').fadeIn(function() { $('#finished-image').addClass('img-responsive'); });    // Fade in form to allow user to finish adding details.    $('.form-finish').fadeIn();    // Fade in main form submit button to allow user to submit the completed form.    $('.panel-footer').fadeIn();  // Final Submit Button to Fade In        jcrop_api.destroy();});
查看完整描述

1 回答

?
慕姐8265434

TA貢獻1813條經驗 獲得超2個贊

使用 CSS 修剪圖像對于比圖像本身更寬的桌面來說效果很好,但是當響應式地調整圖像大小時,由于圖像的寬度和高度總是根據設備而變化,因此幾乎不可能。


反而; 我轉向 JavaScript,它實際上將圖像修剪為寬度和高度以及所需的位置,由 Jcrop 設置,然后使用 Jcropimg-responsive調整圖像大小以適應移動設備就沒有問題了。


function showPart(img, offsetTop, offsetLeft, width, height){

? ? var src = img.src;

? ? $(img).replaceWith("<canvas id='cnvs' class='img-responsive' style='max-width:100%;'></canvas>");

? ? var canvas = document.getElementById('cnvs');

? ? canvas.height = height;

? ? canvas.width = width;

? ? var ctx = canvas.getContext("2d");

? ? var img = new Image();

? ? img.onload = function(){

? ? ? ? ctx.drawImage(this, offsetLeft, offsetTop, width, height, 0, 0, width, height);

? ? };

? ? img.src = src;

}

查看完整回答
反對 回復 2023-10-14
  • 1 回答
  • 0 關注
  • 149 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號