javascript模拟ACDSEE简单功能

2016-02-19 19:06 14 1 收藏

关注图老师设计创意栏目可以让大家能更好的了解电脑,知道有关于电脑的更多有趣教程,今天给大家分享javascript模拟ACDSEE简单功能教程,希望对大家能有一点小小的帮助。

【 tulaoshi.com - Web开发 】

简单的放大缩小,显示坐标功能。
-------------------------------------
演示代码:
-------------------------------------
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
HTML
HEAD
TITLE Document /TITLE
style type="text/css"
body{
 padding : 0px ;
 margin : 0px;
 background-color : #999999 ;
}
.DivMain {
 position : absolute ;
 text-align : center ;
 overflow : hidden ;
}
.DivMenu {
 position : absolute ;
 text-align : left ;
 overflow : hidden ;
}
.ImgMain {
 position : absolute ;
 overflow : hidden ;
 border : 0px ;
}
.TBMain {
 background-color : #CCCCCC ;
 padding : 0px ;
 border : 0px ;
 z-index : 99 ;
 line-height : 18px ;
 
}
.TBMenu {
 background-color : #FFCCCC ;
 padding : 0px ;
 border : 0px ;
 z-index : 99 ;
 color: #000000 ;
 
}
.HrScroll {
 margin : 0px;
 background-color : #FFFFFF ;
 padding : 0px ;
 border : 0px ;
 z-index : 99 ;
 color : #000000 ;
 border-spacing : 0px;
 width : 160px ;
 height : 10px ;
}
/style

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)SCRIPT LANGUAGE="JavaScript"
!--
 var originalWidth ;
 var originalHeight ;
 var objDivMain ;
 var objTbMain ;
 var objImg ;
 var ObjDrag ;
 var objDivMenu ;
 var objTbMemu ;
 var objbtnImgInfo ;
 var objDivFlag;
 var objHrScroll;
 var oRcts ;
 var oTextRange ; 
function setInit(obj) {
 objDivMain = document.getElementById("divMain") ;
 objTbMain =  document.getElementById("TbMain") ;
 objDivMenu = document.getElementById("DivMenu") ;
 objTbMenu =  document.getElementById("TbMenu") ;
 objImg = document.getElementById("imgMain") ;
 objbtnImgInfo = document.getElementById("btnImgInfo") ;
 
 objDivFlag = document.getElementById("DivFlag");
 objHrScroll = document.getElementById("HrScroll");
 originalWidth = obj.width;
 originalHeight = obj.height;
 objImg.style.width = originalWidth;
 objImg.style.height = originalHeight;
 fmImgZoom.FitScreen.click();
}
function setFitScreen() {
 initImg(objImg);
}
function setOriginal() {
 var intBodyWidth ;
 var intBodyHeight ;
 intBodyWidth = document.body.clientWidth ;
 intBodyHeight = document.body.clientHeight ;
 objImg.style.left = 0 ;
 objImg.style.top = 0 ;
 objImg.style.width = originalWidth;
 objImg.style.height = originalHeight;
 objImg.style.zoom = 1 ;
 objDivMain.style.width = intBodyWidth ;
 objDivMain.style.height = intBodyHeight - objTbMain.clientHeight;
 fnWritePos(objImg.style.left,objImg.style.top,objImg.style.zoom);
}
function initImg(objCurrent) {
 var intBodyWidth ;
 var intBodyHeight ;
 intBodyWidth = document.body.clientWidth ;
 intBodyHeight = document.body.clientHeight ;

 objTbMain.style.top = 0;
 objTbMain.style.height = 20;
 objTbMain.style.width = intBodyWidth;
 
 objDivMain.style.left = 0 ;
 objDivMain.style.height = intBodyHeight - objTbMain.clientHeight;
 objDivMain.style.width = intBodyWidth ;
 initZoom(objCurrent);
}

function initZoom(obj){
 var intObjWidth ;
 var intObjHeight ;
 var intDivHeight ;
 var intZoomRatio ;

 intDivHeight = objDivMain.style.pixelHeight;
 intObjHeight = obj.style.pixelHeight;
 intZoomRatio = intDivHeight / intObjHeight;
 obj.style.zoom = intZoomRatio ;
 obj.style.top = 0;
 obj.style.left = 0;
 fnWritePos (obj.style.left,obj.style.top,obj.style.zoom) ;
}
function fnMouseDown(obj) {
 ObjDrag=obj;
 ObjDrag.setCapture();
 ObjDrag.l=event.x-ObjDrag.style.pixelLeft;
 ObjDrag.t=event.y-ObjDrag.style.pixelTop;
}
function fnMouseMove() {
 if(ObjDrag!=null) { 
  ObjDrag.style.left = event.x-ObjDrag.l;
  ObjDrag.style.top = event.y-ObjDrag.t;
  fnWritePos(ObjDrag.style.left,ObjDrag.style.top,ObjDrag.style.zoom);
 }
}
function fnMouseUp() {
 if(ObjDrag!=null) {
  ObjDrag.releaseCapture();
  ObjDrag=null;
 }
}
function fnZoomIn() {
 objImg.style.zoom = parseFloat(objImg.style.zoom) + 0.01 ;
 fnWritePos(objImg.style.left,objImg.style.top,objImg.style.zoom);
}
function fnZoomOut() {
 if(objImg.style.zoom0.01){
  objImg.style.zoom = parseFloat(objImg.style.zoom) - 0.01 ;
  fnWritePos(objImg.style.left,objImg.style.top,objImg.style.zoom);
 }
}
function fnDivMouseDown() {
 if ( event.button == 2 && event.srcElement.id != "imgMain") {
  objDivMenu.style.top = event.y;
  objDivMenu.style.left = event.x;
  objDivMenu.style.visibility = "";
  oTextRange = objHrScroll.createTextRange() ;
  oRcts = oTextRange.getClientRects();
  oBndRct = objDivFlag.getBoundingClientRect();
 
  objDivFlag.style.top = oRcts[0].top;
  objDivFlag.style.left = oRcts[0].left + parseInt(objImg.style.zoom * 10) ;
  objDivFlag.style.visibility = "";
 }
 if ( event.button == 1 && event.srcElement.id != "imgMain") {
  objDivMenu.style.visibility = "hidden";
  objDivFlag.style.visibility = "hidden";
 }
}

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)function fnWritePos(intLeft,intTop,intZoom) {
 objbtnImgInfo.innerText = " ImgLeft:" + intLeft + " ImgTop:" + intTop + " ImgZoom:" + intZoom ;
}
function fnSlipMouseDown(obj) {
 ObjDrag=obj;
 ObjDrag.setCapture();
 ObjDrag.l = event.x - ObjDrag.style.pixelLeft;
 ObjDrag.t = ObjDrag.style.pixelTop;
}
function fnSlipMouseMove() {
 if(ObjDrag!=null) {
  if(event.x = oRcts[0].left && event.x = oRcts[0].right ){
   ObjDrag.style.left = event.x - objDivFlag.offsetWidth / 2;
  }
  ObjDrag.t = ObjDrag.style.pixelTop;
  var intCurrentPos = ObjDrag.style.pixelLeft - oRcts[0].left + objDivFlag.offsetWidth / 2;
  var intPicZoom = intCurrentPos / 10;
  objImg.style.zoom = intPicZoom;
  fnWritePos(objImg.style.left,objImg.style.top,objImg.style.zoom);
 }
}
function fnSlipMouseUp() {
 if(ObjDrag!=null) {
  ObjDrag.releaseCapture();
  ObjDrag=null;
 }
}

function setDisplay() {
 if(objImg.style.visibility == ""){
  objImg.style.visibility = "hidden";
 }
 else{
  objImg.style.visibility = "";
 }
}
function fnContextMenu() {
 window.event.returnValue=false;
}
//--
/SCRIPT
/HEAD
BODY oncontextmenu="fnContextMenu()"
form name="fmImgZoom"
TABLE id="tbMain" class="TBMain"
TR
 TD
  input type="button" name="ZoomIn" value="ZoomIn" onclick="fnZoomIn()"
  input type="button" name="ZoomOut" value="ZoomOut" onclick="fnZoomOut()"
  input type="button" name="Original" value="Original" onclick="setOriginal()"
  input type="button" name="FitScreen" value="FitScreen" onclick="setFitScreen()"
  input type="button" name="btnView" value="hide/view" onclick="setDisplay()"
  input id="btnImgInfo" size="50"
 /TD
/TR
/TABLE
div id="divMain" class="DivMain" onmousedown="fnDivMouseDown()"img src="/Files/BeyondPic/jcwcj/2005-12/10/05121012244084441.jpg" id="imgMain" class="imgMain" onload="setInit(this)" onmousedown="fnMouseDown(this)" onmousemove="fnMouseMove()" onmouseup="fnMouseUp()" /div
div id="divMenu" class="DivMenu" style="visibility:hidden"
TABLE class="TBMenu"
TR
 TD10%/TD
 TDbutton id="HrScroll" class="HrScroll"hr noshade/button /TD
 TD1600%/TD
/TR
/TABLE
/div
DIV ID="DivFlag" STYLE="position:absolute;visibility:hidden;width:1px;height:10px;z-index:99"  onmousedown="fnSlipMouseDown(this)" onmousemove="fnSlipMouseMove()" onmouseup="fnSlipMouseUp()" onmouseover="this.style.cursor ='hand'" onmouseout="this.style.cursor=''"↑/DIV
/form
/BODY
/HTML

来源:http://www.tulaoshi.com/n/20160219/1620004.html

延伸阅读
标签: Web开发
随着数码相机的普及,每次出游回来都会面对数量上百的照片整理,处理效率还是非常重要的因素。ACDSee 3.1(完整版)仍然是我目前最常用的照片查看/归档工具。以下是使用ACDSee进行照片整理和HTML相册生成的经验总结,大部分操作都可以完全只使用键盘操作完成。 照片汇总和批量重命名 可以先将所有的数码相机的照片汇总到一个目...
标签: Web开发
今天看CCTV的奥运开幕式的一些东西的时候提示下面的英文: Please open JavaScript function, also install the latest Flash Player . Please activate JavaScript in your browser and upgrade your Flash Player to the latest version. 大致看了一下,中文意思是: 请打开JavaScript功能,还有就是安装最新的Flash Player...
标签: 聊天软件
  由于工作关系,经常要对一些图片的部分或全部进行截取并浏览。笔者曾试用过多种工具,其效果都不是很满意。后来笔者发现,让QQ与ACDSee配合使用,可以巧妙的解决这个问题。下面就把两者的配合方法写出来与大家一起分享。 QQ不只是一款即时聊天软件,同时还是一款强大的免费截图工具,使用QQ的截图功能,可以任意截取图像的全部或部分...
我们都知道,在我们开发时需要在模拟器上模拟GPS,可在Location的时候总是null,上网查了一下,发现如下解决: 网上大侠的解决方案: 在模拟器上获取GPS信息时,使用Location loc = LocationManager.getLastKnownLocation("gps");来获取location信息,但是往往在调试中loc是null的,因为首先需要在模拟器中手动添加GPS信息,有两种手动添加方法 ...
标签: Web开发
JavaScript是基于对象的脚本编程语言,那么它的输入输出就是通过对象来完成的。其中有关输入可通过窗口(Window)对象来完成,而输出可通过文档(document)对象的方法来实现。 二、简单的输入、输出例子 在JavaScript中可以非常方便地实现输入输出信息,并与用户进行交互。 通过使用JavaScript中所提供的窗口对象方法prompt()...

经验教程

669

收藏

8
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部