ここでは、ボタンのクリックで簡単なズームインおよびズームアウト機能を作成しようとしました。
HTML
<input type="button" value ="-" onClick="zoom(0.9)"/>
<input type="button" value ="+" onClick="zoom(1.1)"/>
<div id="thediv">
<img id="pic" src="http://cdn1.iconfinder.com/data/icons/VistaICO_Toolbar-Icons/256/Zoom-in.png"/>
</div>
脚本
var zoomLevel = 100;
var maxZoomLevel = 105;
var minZoomLevel = 95;
function zoom(zm) {
var img=document.getElementById("pic");
if(zm > 1){
if(zoomLevel < maxZoomLevel){
zoomLevel++;
}else{
return;
}
}else if(zm < 1){
if(zoomLevel > minZoomLevel){
zoomLevel--;
}else{
return;
}
}
wid = img.width;
ht = img.height;
img.style.width = (wid*zm)+"px";
img.style.height = (ht*zm)+"px";
img.style.marginLeft = -(img.width/2) + "px";
img.style.marginTop = -(img.height/2) + "px";
}
しかし問題は、ズームイン機能をクリックするたびに、画像がページの上隅に移動することです。これを解決しようとしましたが、効果的な解決策はありませんでした。
これは、間違いを見つけるのに役立つ可能性のある作業中のBINです。
また、別の質問: この関数にマウスホイールを適用する方法はありますか?
アップデート
ズームの問題が変更されました。しかし、マウスホイールもここで実行されましたが、問題は、マウスホイールの最大値を指定できないことです。 更新されたビン