您好,我目前有一个非常简单的网站。它由一个全帧的背景图像和一个容器 div 组成......背景图像是动态居中的,并使用 css 规则放置,如下所示:
html {
background: url(../images/hotel_room.jpg) no-repeat center center fixed;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}
这对我来说似乎很有效,并保持背景图像以一种“响应式”的方式定位,这正是我想要的!
我还有一个全宽的容器 div,位置如下:
#mega_wrap{
position: absolute;
top:0;
left: 0;
height: 100%;
width:100%;
}
接下来,我有一些简单的 jQuery,它使用 onClick 将 div 附加到 #mega_wrap 容器,基于鼠标单击时的位置......就像这样:
$(document).ready(function() {
//onClick append a resizable & draggable div with handles on all 4 corners
$('#mega_wrap').click(function(e){
//Define element css and positioning then add both draggable and resizable from jQuery UI
var ele = $("<div>");
ele.css({width:"100px", height:"100px", border:"3px dashed white", position:"absolute", left: e.pageX - 50, top: e.pageY -50});
ele.draggable();
ele.resizable({
handles: 'all'
});
//Define elements handles and append them to the new div
var eleHandleNE = $("<div class='ui-resizable-handle ui-resizable-ne' id='negrip'>");
var eleHandleSE = $("<div class='ui-resizable-handle ui-resizable-se' id='segrip'>");
var eleHandleSW = $("<div class='ui-resizable-handle ui-resizable-sw' id='swgrip'>");
var eleHandleNW = $("<div class='ui-resizable-handle ui-resizable-nw' id='nwgrip'>");
eleHandleNE.appendTo(ele);
eleHandleSE.appendTo(ele);
eleHandleSW.appendTo(ele);
eleHandleNW.appendTo(ele);
//Append new div to the container div called mega_wrap
$("#mega_wrap").append(ele);
});
});
注意:所有的 div 都可以在所有角落调整大小,并且可以使用 jQuery 拖动......所以 div 可能是容器内的任何大小和任何位置#mega_wrap ......。这是我的问题开始的地方:
我正在寻找一种方法来使用每个 div 的某种变量来跟踪所有附加 DIVS 的位置?!使用javascript或jquery??然后,如果/当调整 div 的大小或在容器周围拖动时,我需要能够更新该变量!
最后...当调整窗口大小时,我需要将 div 调整到它们在背景图像上的确切旧位置...所以每个 div 都会根据窗口大小以锁定的比例适当地缩放(向上或向下)?! ?
注意:认为我可能必须根据提供的解决方案以不同的方式制作背景图像?接受建议....可能从 .css 更改为 .js 或 php?
非常感谢您的帮助.... TIY