我正在設置浮動動作按鈕,就像Google的新材質設計一樣。這是jQuery的我現在使用:
$(document).ready(function() {
var doc = $(document).height();
var height = $(window).height();
var offset = height - 20 ;
console.log(doc);
console.log(height);
console.log(offset);
$("#floating_nav_container").css("top",""+ offset +"px");
});
我希望能夠檢測到視口的高度,並有底部之上我的行動按鈕顯示爲20px。
我的「floating_nav_container」是一個絕對定位的div內的引導「col-md-6」父母的div,我已經爲900px的測試目的設置了一個固定的高度。
有時$(document).height()
可以獲得900的權利,其他時候則不可以; $(window).height
總是與文檔1相同。
我的文檔類型是:
<!DOCTYPE html>
我已經在這裏讀的是通常的處理辦法時,這兩種方法返回相同的值。
編輯:我試圖在3列布局內完成此操作。 「floating_nav_container」僅適用於中間列。將CSS設置爲底部爲20px的固定位置不起作用,因爲取決於視口大小,操作按鈕可能會在第三列或列的外部顯示。
如果將「floating_nav_container」設置爲已固定,並將代碼設置爲中間列的子級,則其行爲與在DOM頂部設置的行爲相同。
我選擇將它絕對定位在中間列中,因爲不管瀏覽器如何重新調整大小,它都保留在父容器中。問題是當頁面超出視口的高度時,按鈕消失。
我的希望是找到一種方法來計算高度,並讓它動態確定視口底部的偏移應該適用於任何設備。
你能提供一個小提琴這個問題嗎?因爲在控制檯中這會返回兩個不同的數字。所以我覺得很難重現這個問題。或者也許是一個網址? –
@JasonvanderZeeuw感謝您的回覆! 我在這裏建了一把小提琴 https://jsfiddle.net/m3wh2g74/ – HisPowerLevelIsOver9000