我找到這個資源
只是
<img class="lazyload" src="loading.gif(loading.gif圖片路徑)" data-src="要加載的圖片路徑" />
loading 這個圖片,我明明是很小一張 30x30
但是他顯示的時候卻是完全放大的
如果改 img 的樣式,要加載的圖片也會跟著變.....
請問要怎麼實現是只有 loading 的時候我是可控制大小的 like 30x30
當原始圖出現時不會影響?
作個檢查就行了…
<html>
<head>
<title>lazyload test</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="/style/jquery-ui.css" />
<script type="text/javascript" src="/scripts/lib/jquery.min.js"></script>
<script type="text/javascript" src="/scripts/lazyload.js"></script>
<!-- CSS -->
<style type="text/css">
.admin-lazyload{
width:30px;
height:30px;
border:1px solid black;
}
</style>
<!-- Javascript -->
<script language="javascript">
$(document).ready(function() {
var img = $('.admin-user-icon.admin-lazyload');
img.lazyload();
img.on('load',function(){
if(img.attr('src') == '/test/octopus.gif'){
img.removeClass('admin-lazyload');
}else{
img.addClass('admin-lazyload');
}
});
});
</script>
</head>
<body>
<img class="admin-user-icon admin-lazyload" data-src="/test/octopus.gif" src="/test/giphy.gif">
</body>
</html>
不行呢,跑完之後我加載的圖也會一樣小。
衍伸出一個問題,可以把loading圖片水瓶垂直置中嗎?
我找不到他加載完後的事件
像上面那樣,試試吧
哈,好像就沒有反應了。
把你的範例丟上來,不然也沒法試~
改了一下,你再試試~
$(document).ready(function() {
$('.admin-lazyload').each(function(index, el) {
$(this).attr('src', '../images/lazyload30.svg');
});
$("img.admin-lazyload").lazyload();
var img = $('.admin-lazyload');
img.on('load',function(){
if(img.attr('src') == '../images/lazyload30.svg'){
img.addClass('admin_lazyload_style');
}else{
img.removeClass('admin_lazyload_style');
}
});
});
<img class="admin-user-icon admin-lazyload"
data-src="<?=$row['icon'];?>" src="">
我也想個快兩個小時
$(document).ready(function() {
var img = $('.admin-lazyload');
img.on('load',function(){
if(img.attr('src') == '../images/lazyload30.svg'){
img.addClass('admin_lazyload_style');
}else{
img.removeClass('admin_lazyload_style');
}
});
});
哈哈,大小還是依樣沒有變,確定有這個style
.admin_lazyload_style{
width: 30px;
height: 30px;
}
測試後沒問題了,修正如上…