jquery $ (উইন্ডো)। উচ্চতা () নথির উচ্চতা ফিরিয়ে দিচ্ছে


104

আমি নিশ্চিত যে আমি করছি এমন একটি সাধারণ ত্রুটি আছে, তবে আমি কেবল সতর্ক করছি $(window).height()এবং এটি একই মানটি প্রদান করে $(document).height()

আমি একটি 13 "এমবিএতে এবং আমার ব্রাউজারগুলির উইন্ডো উচ্চতা 780px - 820px (মোটামুটিভাবে) এর মধ্যে সর্বাধিকতর হয়ে থাকি তবে প্রতিবার এটি ডকুমেন্টের উচ্চতার অনুরূপ উইন্ডোর উচ্চতা ফেরত দেয়। প্রতিটি সাইটের ক্ষেত্রে আমি এটিতে কাজ করছি is 1000px এর বেশি।

এখানে কি হচ্ছে?

alert($(window).height());
alert($(document).height()); 

আপনি কি ব্রাউজারে কাজ করছেন?
কনিষ্ক পানামালদিনিয়া

এই সমস্যাটি jquery-1.8.0 এর সাথে উপস্থিত হতে শুরু করেছিল, jquery এর পুরানো সংস্করণগুলি এটি সঠিকভাবে করেছে (এমনকি
ডক্টইপিই

উত্তর:


245

কোনও doctypeট্যাগ ছাড়াই , ক্রোম উভয় কলের জন্য একই মানের প্রতিবেদন করে।

একটি কঠোর ডক্টাইপ যুক্ত করার <!DOCTYPE html>ফলে মান হিসাবে বিজ্ঞাপন হিসাবে কাজ করে।

doctypeট্যাগ হতে হবে খুব আপনার দস্তাবেজে প্রথম জিনিস। উদাহরণস্বরূপ, এটির আগে কোনও পাঠ্য থাকতে পারে না, এমনকি এটি কিছু রেন্ডার না করে।


11
আপনি <! DOCTYPE HTML>
টম চিভারটন

এছাড়াও, ভুল ডক্টিপ টুইটার বুটস্ট্র্যাপ স্ক্রোলস্পিকে একই কারণে অদ্ভুতভাবে আচরণ করতে দেয় যে $ (উইন্ডো)। উচ্চতা () নথির উচ্চতা ফেরত দেয়।
নিধিদেশদাস

3
আমার ক্ষেত্রে, Response.Writeআমার একটি এএসপি সাইটে আমার কোডের পিছনে ছিল যা 1কোনও HTML এর আগে আউটপুট দেয় output সুতরাং আমার ডক টাইপটি সঠিক ছিল, তবে প্রযুক্তিগতভাবে পৃষ্ঠায় প্রথম জিনিস ছিল না।
জেমস

1
আমার একই সমস্যা আছে তবে
ডক্টাইপটি

1
" ডক্টাইপ ট্যাগটি অবশ্যই আপনার নথিতে প্রথম জিনিস হতে হবে Eg উদাহরণস্বরূপ, এর আগে আপনার কোনও পিএইচপি কোড থাকতে পারে না, এমনকি এটি কোনও রেন্ডার না করলেও " "সম্ভবত এটি কীভাবে হতে পারে? ব্রাউজারটি সার্ভারটি কী চলছে তা জানে না, এটি কেবলমাত্র HTML মার্কআপ সহ একটি পাঠ্য ফাইল গ্রহণ করে file আপনি যদি আইআইএস চালিয়ে যাচ্ছেন এবং আপাচে নয়? সার্ভার কী করছে তা ব্রাউজারটি যত্ন করে না।
সাবেলফোস্টে

24

আমারও একই সমস্যা ছিল এবং এটি ব্যবহার করে এটি সমাধান হয়েছে।

var w = window.innerWidth;
var h = window.innerHeight;

1
এত অদ্ভুত, আমি যথাযথ ডক্টাইপও ব্যবহার করছি। আপনার অন্তর্দৃষ্টি আমার সমস্যা স্থির! ধন্যবাদ
মার্টিজন ভ্যান হুফ

1
একই সমস্যা - এর বৈধ ডক্টাইপ এবং সমস্ত ছিল। কিছুটা বেশি ক্রস প্ল্যাটফর্ম: var w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; var h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
মেলানি জনসন

সত্যিই সমস্যাটি ঠিক করা (এবং হ্যাঁ আমার একটি
ডক্টাইপ রয়েছে

1

আমি মনে করি আপনার দস্তাবেজটির বিষয়বস্তু প্রদর্শনের জন্য উইন্ডোতে অবশ্যই পর্যাপ্ত জায়গা থাকতে হবে। তার মানে ডকুমেন্টের আর কোনও অংশ দেখতে নিচে স্ক্রোল করার দরকার নেই। সেক্ষেত্রে ডকুমেন্টের উচ্চতা উইন্ডোর উচ্চতার সমান হবে।


দস্তাবেজটি প্রতিটি পৃষ্ঠায় উইন্ডোর নীচে প্রসারিত।
ফ্রেজার

0

এর জন্য এখানে একটি প্রশ্নোত্তর রয়েছে: স্ক্রিন.ওয়েলহাইট এবং উইন্ডো-হাইটের মধ্যে পার্থক্য ()

ছবিগুলিও রয়েছে, যাতে আপনি প্রকৃতপক্ষে পার্থক্যগুলি দেখতে পারেন। আশাকরি এটা সাহায্য করবে.

মূলত, $(window).height()ব্রাউজার উইন্ডোর (ভিউপোর্ট) এর সর্বাধিক উচ্চতা $(document).height()আপনাকে দেয় এবং ব্রাউজারের অভ্যন্তরে নথির উচ্চতা দেয়। বেশিরভাগ সময়, তারা ঠিক একই হবে, এমনকি স্ক্রোলবারগুলিও।


0

এটি সত্যিই কার্যকর যদি আমরা আমাদের ওয়েব পৃষ্ঠায় ডক্টাইপ ব্যবহার করি jquery (উইন্ডো) ভিউপোর্টের উচ্চতা ফিরিয়ে দেবে অন্যথায় এটি সম্পূর্ণ নথির উচ্চতা ফিরিয়ে দেবে।

আপনার ওয়েব পৃষ্ঠার শীর্ষে নীচের ট্যাগটি সংজ্ঞায়িত করুন: <!DOCTYPE html>


আপনার ওয়েব পৃষ্ঠার শীর্ষে এই ট্যাগটি ব্যবহার করুন: <! ডক্টইপিএইচটিএমএল
গৌরব যাদব
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.