我的圖片庫有下一個和上一個鏈接,當用戶單擊其中一個時,它會在#the_image div中加載圖像,但我需要每次調整圖像大小。我想我會把代碼調整爲.load的回調函數。但它不是每次都有效。奇怪的是,如果我在image = $('#the_image');
之後插入alert("blah");
,則圖像get每次都會正確定位。有任何想法嗎?.load回調函數有時有效嗎?
這裏是我的JS:
<script type="text/javascript">
$(document).ready(function() {
$('#previous').live('click', function(e){
$('#img_wrapper').load($(this).attr('href') + ' #container',function() {
var height = $(window).height();
var width = $(document).width();
var image = $('#the_image');
$("#the_image").css("max-height",height-200);
image.css({
'max-height': height-200,
'left': width/2 - (image.width() /2)-5,
'top': height/2 -(image.height() /2),
});
prev = $('#previous'); next = $('#next');
prev.css({
'left': 0,
'top': (height/2)-150,
});
next.css({
'left': 924,
'top': (height/2)-150,
});
});
e.preventDefault();
});
});
</script>
這是什麼工作。由於碧玉,不得不修改自己的代碼位:
$(function() {
$(document).delegate('#next', 'click', function (e) {
$('#img_wrapper').load($(this).attr('href') + ' #container',function() {
var height = $(window).height(),
width = $(document).width();
$("#the_image").bind('load', function() {
var image = $('#the_image');
$("#the_image").css("max-height",height-200);
image.css({
'max-height': height-200,
'left': width/2 - (image.width() /2)-5,
'top': height/2 -(image.height() /2),
});
});
$('#previous').css({
'left' : 0,
'top' : ((height/2) - 150),
});
$('#next').css({
'left' : 924,
'top' : ((height/2) - 150),
});
});
e.preventDefault();
});
});
嘗試了您的建議,但圖像未正確定位。 – DanielOlivasJr
你可以發佈一個鏈接到問題頁面,以便我可以看到該行爲? – Jasper
好酷。得到它的工作,不得不計算一下數學,謝謝你的幫助! – DanielOlivasJr