所以,這裏是代碼返回頁面的同一部分(CSS/jQuery的)
jQuery('.item').click(function() { \t \t
jQuery('.popup').show();
jQuery('.main').hide(); \t
}); \t
jQuery('.go_back').click(function() { \t \t
jQuery('.main').show();
jQuery('.popup').hide(); \t
}); \t
.box{
border-style: solid;
width: 100px;
height: 100px;
margin: 16px;
cursor: pointer;
}
.popup_content{
border-style: solid;
width: 200px;
height: 200px;
margin: 16px;
background-color: #3f51b5;
color: #fff;
padding:16px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="main">
<div class="item item_1" data-id="item_1">
<div class="box container_1 ">
Item 1
</div>
</div>
<div class="item item_2" data-id="item_2">
<div class="box container_2">
Item 2
</div>
</div>
<div class="item item_3" data-id="item_3">
<div class="box container_3">
item 3
</div>
</div>
<div class="item item_4" data-id="item_4">
<div class="box container_4">
Item 4
</div>
</div>
<div class="item item_5" data-id="item_5">
<div class="box container_5">
Item 5
</div>
</div>
<div class="item item_6" data-id="item_6">
<div class="box container_6">
Item 6
</div>
</div>
<div class="item item_7" data-id="item_7">
<div class="box container_7">
Item 7
</div>
</div>
<div class="item item_8" data-id="item_8">
<div class="box container_8">
Item 8
</div>
</div>
<div class="item item_9" data-id="item_9">
<div class="box container_9">
Item 9
</div>
</div>
<div class="item item_10" data-id="item_10">
<div class="box container_10">
Item 10
</div>
</div>
</div>
<div class="popup" style="display:none;">
<div class="popup_content">
Popup content
</div>
<button type="button" class="go_back">Go back</button>
</div>
這裏是設置。
在主div中有10個容器。單擊其中一個時,main
div將被隱藏,並顯示「彈出」(請參閱js)。
現在,想象一下您單擊位於頁面底部的「Item 10」框的場景。然後將顯示「彈出」div。如果點擊「返回」按鈕,則會再次看到主要內容,但現在您位於頁面的頂部,而不是「項目10」。
我知道它爲什麼滾動到頁面頂部(因爲popup
內容的高度比main
div更短)。因爲popup
div永遠不會比main
div更高,有沒有辦法「回到」主要div的同一部分?
例如,如果您單擊「項目10」,並且您看到彈出內容,則單擊「返回」,我想顯示「項目10」而不是「項目1」(希望,我正在製作感)。
啊,這是有道理的。 =)謝謝。解決方案簡單學到了新東西。=) –