আমার ওয়েব অ্যাপ্লিকেশনটিতে, আমি ব্যবহারকারীদের মানচিত্রের ধারকটির আকার নির্ধারণ করতে সক্ষম করতে চাই।
কনটেইনারটি সামান্য প্রসারিত হওয়ার সময় সবকিছু ঠিকঠাক কাজ করেছিল (দৃশ্যত এটি হ'ল সীমানার ঠিক পিছনে থাকা টাইলগুলি ইতিমধ্যে লোড করা হয়েছিল)। যাইহোক, যখন ধারকটি উল্লেখযোগ্যভাবে প্রসারিত হয় (নিম্নলিখিত উদাহরণে, 300 থেকে 1000px প্রস্থে) তখন ফাঁকা স্থান বাকী থাকে।
কীভাবে মানচিত্রটিকে পুনরায় আঁকবেন এবং নতুন আকারের সাথে মানিয়ে নেবেন?
redraw()
সমস্ত স্তরকে কল করা কোনও লাভ হয়নি। জুম ইন এবং আউট না।
অপেরা, ক্রোম এবং ফায়ারফক্সে বর্ণিত ফলাফলের সাথে আমি এটি পরীক্ষা করেছি। আইই 8-তে, আশ্চর্যের সাথে, সমস্যাটি দেখা দেয় নি এবং মানচিত্রটি স্বয়ংক্রিয়ভাবে রূপান্তরিত হয়।
পরীক্ষার জন্য একটি সরলীকৃত ওয়েবপৃষ্ঠা:
<html>
<head>
<style>
#mapbox {
width: 300px;
height: 500px;
border: 1px solid black;
}
</style>
<script src="http://openlayers.org/api/OpenLayers.js"></script>
</head>
<body>
<div id="mapbox"></div>
<input type="button" id="test" value="resize">
<script>
var map = new OpenLayers.Map('mapbox');
map.addLayer(new OpenLayers.Layer.OSM());
map.setCenter(
new OpenLayers.LonLat(1000000, 7000000), 5);
document.getElementById('test').onclick = function() {
document.getElementById('mapbox').style.width = '1000px';
}
</script>
</body>
</html>