首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为所有网页内容创建放大镜效果?

为所有网页内容创建放大镜效果?
EN

Stack Overflow用户
提问于 2015-05-11 22:13:37
回答 1查看 3K关注 0票数 2

我想做一些类似的事情,在按钮上单击显示所有网页内容的放大镜,第二个按钮单击将关闭放大镜。

只是想知道是否有可能为任何可能使用HTML5、JQuery、CSS3的整个网页内容创建放大镜效果?

我查了一些例子,但它们都有一个大的图像和一个小的图像或画布。我想使用它在任何网站的全部内容,而不仅仅是images...is这可能吗?

EN

回答 1

Stack Overflow用户

发布于 2015-12-03 17:29:55

这完全可以通过使用Zoomooz.js库:http://jaukia.github.io/zoomooz/来实现。

要做到这一点,首先需要下载JavaScript库并引用所需的部分:

包含

代码语言:javascript
复制
<head>
    <title>Zooming Test</title>
    <link rel="stylesheet" href="style.css" type="text/css" media="screen" />
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" type="text/javascript"></script> 
    <script type="text/javascript" src="sylvester.js"></script>
    <script type="text/javascript" src="purecssmatrix.js"></script>
    <script type="text/javascript" src="jquery.animtrans.js"></script>
    <script type="text/javascript" src="jquery.zoomooz.js"></script>
</head>

JavaScript

它以类“缩放”为目标,并从库中应用“zoomTo”方法。然后,通过将同样的东西应用于身体,它允许用户单击任何元素的外部,将其放大到正常水平。若要展开此操作,请将“缩放”类应用于任何您希望可缩放的元素。

代码语言:javascript
复制
$(document).ready(function() {
   $(".zoom").click(function(evt) {
   evt.stopPropagation();
   $(this).zoomTo();
   });
   $(window).click(function(evt) {
   evt.stopPropagation();
   $("body").zoomTo();
   });
   $("body").zoomTo();
});

接下来,创建一个受缩放功能影响的容器:

代码语言:javascript
复制
<body>
      <div id="container">
      <div id="outer" class="zoom">
      <div id="inner" class="zoom">
      <p><a href="#">Click here to zoom</a></p>
      </div>
      </div>
      </div>
</body>

CSS

然后,对每个div元素应用大小和定位。(#内部必须利用位置:绝对的,这样才能起作用)

代码语言:javascript
复制
#container {
    width: 800px;
    height: 500px;
    margin: 0 auto;
}
#outer {
    width: 400px;
    height: 200px;
    background: #aaa;
    margin: 50px auto;
    padding: 70px;
}
#inner {
    width: 400px;
    height: 200px;
    background: #eee;
    margin: 0 auto;
    position: absolute;
}

(可选)文本样式:

代码语言:javascript
复制
#inner p {
text-align: center;
font: 25px/200px Helvetica, sans-serif;
}
#inner p a {
color: #000;
text-decoration: none;
}
#inner p a:hover {
text-decoration: underline;
}

Modification

您应该有三个单独的缩放层来导航。你可以修改CSS来放大你想要的更大范围的区域。添加或删除div元素将决定您有多少缩放级别。

参考: http://designshack.net/articles/javascript/create-an-awesome-zooming-web-page-with-jquery/

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30178516

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档