我想做一些类似的事情,在按钮上单击显示所有网页内容的放大镜,第二个按钮单击将关闭放大镜。
只是想知道是否有可能为任何可能使用HTML5、JQuery、CSS3的整个网页内容创建放大镜效果?
我查了一些例子,但它们都有一个大的图像和一个小的图像或画布。我想使用它在任何网站的全部内容,而不仅仅是images...is这可能吗?
发布于 2015-12-03 17:29:55
这完全可以通过使用Zoomooz.js库:http://jaukia.github.io/zoomooz/来实现。
要做到这一点,首先需要下载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”方法。然后,通过将同样的东西应用于身体,它允许用户单击任何元素的外部,将其放大到正常水平。若要展开此操作,请将“缩放”类应用于任何您希望可缩放的元素。
$(document).ready(function() {
$(".zoom").click(function(evt) {
evt.stopPropagation();
$(this).zoomTo();
});
$(window).click(function(evt) {
evt.stopPropagation();
$("body").zoomTo();
});
$("body").zoomTo();
});接下来,创建一个受缩放功能影响的容器:
<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元素应用大小和定位。(#内部必须利用位置:绝对的,这样才能起作用)
#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;
}(可选)文本样式:
#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/
https://stackoverflow.com/questions/30178516
复制相似问题