перезагрузка страницы при img.src="xxxx"
#b_img{
position:absolute;
background-color:#969696;
display:none;
}
#empty,#close{
float:left;
height:14px;
}
#empty{
width:80%;
}
#close{
width:20%;
background-color:#FF0000;
cursor:pointer;
text-align:center;
}
function img_prc(img){
var scroll = defScroll();
if (img.complete){
$("#b_img").css({left:(getClientWidth()/2-(img.width/2)),top:((getClientHeight()/2)-(img.height/2))+scroll,height:(img.height+24),width:(img.width+7)});
$("#b_img").show();
return true
} else return false;
}
$(document).ready(function(){
$(".s_img").bind("click", function(){
var eimg = new Image();
$("#div_img").attr("src",$(this).parents(".dv_img").children(".a_b_img").val());
var bsrc = $(this).parents(".dv_img").children(".a_b_img").val();
eimg.src = bsrc;
img_prc(eimg);
})
$("#close").bind("click", function(){
$("#b_img").hide();
})
});
и в HTML ( куда ставим фото ): <div id="b_img" style="left: 391.5px; top: 391.5px; height: 450px; width: 647px; display: none;"> <div class="cpnl"> <div id="empty"> </div> <div id="close">close</div> </div> <img src="/upload/iblock/53f/03_camino_fuori.JPG" id="div_img"> </div> и откуда берем : <div class="dv_img"> <input type="hidden" title="" value="/upload/iblock/fd4/04_DSCF4606.gif" class="a_b_img"> <img width="140" height="140" border="0" src="/upload/iblock/680/04s_DSCF4606.gif" class="s_img"> </div> Добрый день друзья! такой проблем - вот значиццо кликаем мы на превьюшку (".s_img"), берем адрес большой фотки $("#div_img").attr("src",$(this).parents(".dv_img" ).children(".a_b_img").val()) и на eimg.src = bsrc; страница перезагружается!!! делает она это только в первый раз для каждой отдельно взятой превьюшки. в последующие клики она спокойно отрабатывает и выводит большую картинку как и задумывалось! а вот зачем она в первый раз reload делает? и почему!? спасибо!!! |
Пожалуйста, отформатируйте свой код!
Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [js] ... ваш код... [/js] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
ага, сори, исправляюсь!...
|
не могу уследить в чем тут проблема конкретно
не вижу повода для reload-а. возможно у вас еще где-то есть код, который и производит reload попробуйте вот такой костыль: но проблема скорее всего в другом месте, и это может выплыть уже в другой ситуации
function img_prc(img){
var scroll = defScroll();
if (img.complete){
$("#b_img").css({left:(getClientWidth()/2-(img.width/2)),top:((getClientHeight()/2)-(img.height/2))+scroll,height:(img.height+24),width:(img.width+7)});
$("#b_img").show();
return true
} else return false;
}
$(document).ready(function(){
$(".s_img").bind("click", function(){
var eimg = new Image();
$("#div_img").attr("src",$(this).parents(".dv_img").children(".a_b_img").val());
var bsrc = $(this).parents(".dv_img").children(".a_b_img").val();
//mode_start
eimg.onload=function(){
img_prc(eimg);
}
eimg.src = bsrc;
//mode_end
})
$("#close").bind("click", function(){
$("#b_img").hide();
})
});
|
а img.onload не загрузку картинки определяет? если так то это не помогает... я тоже в упор не вижу почему он перезагружается. переименовал все классы а он "кю" все туда же..
|
Цитата:
ты уверен, что больше у тебя никаких кодов на странице нет? выложи полный вариант собранной страницы на хостинг, или хотя бы архивом(вместе с картинками) |
спасибо GVOZD, косяк был в подгружаемых в шаблоне скриптах...
|
говорил же)
|
да спасибо!! у меня уже моск вынялся от такой непонятки )
|
все было не так.... по прежнему не работает. по прежнему reload. перенес все на локалку ничего лишнего. только то что в первом посте. HEEEELLLLPPP!!!!!!!
img.onload в IE7 не отрабатывается |
| Часовой пояс GMT +3, время: 01:43. |