Tôi có một trang web sử dụng hình ảnh lớn cho nền của nó. Tôi đã hy vọng sử dụng jQuery để tải hình ảnh sau khi nó được tải xuống (về cơ bản là cách bing.com tải hình nền của nó). Điều này có thể thực hiện được với jQuery không? Nếu vậy, có một plugin mà bạn muốn giới thiệu?Làm mờ trong hình nền
Trả lời
article này có thể là u seful. Sao chép từ đó:
HTML
<div id="loader" class="loading"></div>
CSS
DIV#loader {
border: 1px solid #ccc;
width: 500px;
height: 500px;
}
/**
* While we're having the loading class set.
* Removig it, will remove the loading message
*/
DIV#loader.loading {
background: url(images/spinner.gif) no-repeat center center;
}
Javascript
// when the DOM is ready
$(function() {
var img = new Image();
// wrap our new image in jQuery, then:
$(img)
// once the image has loaded, execute this code
.load(function() {
// set the image hidden by default
$(this).hide();
// with the holding div #loader, apply:
$('#loader')
// remove the loading class (so no background spinner),
.removeClass('loading')
// then insert our image
.append(this);
// fade our image in to create a nice effect
$(this).fadeIn();
})
// if there was an error loading the image, react accordingly
.error(function() {
// notify the user that the image could not be loaded
})
// *finally*, set the src attribute of the new image to our image
.attr('src', 'images/headshot.jpg');
});
Trước tiên, bạn có thể tải hình ảnh và sau đó, khi nó đã tải xong, hãy đặt nó làm hình nền. Bằng cách đó, trình duyệt sẽ (hy vọng) tải hình nền từ bộ nhớ cache thay vì tải xuống lại. Như bạn yêu cầu nó như là một plugin:
$.fn.smartBackgroundImage = function(url){
var t = this;
//create an img so the browser will download the image:
$('<img />')
.attr('src', url)
.load(function(){ //attach onload to set background-image
t.each(function(){
$(this).css('backgroundImage', 'url('+url+')');
});
});
return this;
}
Sử dụng nó như thế này:
$('body').smartBackgroundImage('http://example.com/image.png');
Cảm ơn rất nhiều, nhưng làm thế nào tôi có thể làm cho hình nền mờ đi ? – desbest
Đây là một cách. Trong document.ready: '$ ('') .attr ('src', url) .load (function() { \t \t $ ('# yourContainerDiv') .ss ('backgroundImage', 'url (' images) /hình ảnh của bạn.png ')'); \t \t $ ('# yourContainerDiv'). FadeIn ('slow'); \t}); }); 'Xin lỗi về định dạng. Dán trong trình soạn thảo của bạn để đọc nó. Không cho phép các khối mã trong nhận xét. –
Bạn không thể sử dụng hình nền CSS, bởi vì nó không thể đính kèm một sự kiện để tải các hình ảnh (theo như tôi biết).
Vì vậy, tôi sẽ cho nó một shot, nhưng đã không kiểm tra nó:
HTML:
<body>
<div class="bgimage"><img src="/bgimage.jpg" ></div>
<div>
... content ...
</div>
</body>
CSS:
.bgimage { position: absolute: }
Javascript:
$(function() {
$(".bgimage")
.css("opacity",0);
.load(function() { $(this).fadeIn(); });
});
Bạn có thể đi với thủ thuật sau đây, xin lỗi nếu một chút bẩn.
Script:
jQuery.preloadImages = function() {
for (var i = 0; i < arguments.length; i++) {
jQuery("<img>").attr("src", arguments[i]);
$('.box1').attr('preloadURL', arguments[0]);
}
}
$.preloadImages("sky.jpg");
$(document).ready(function() {
if ($('.box1').attr('preloadURL') == 'sky.jpg') {
$('.box1').css({ 'background-image': 'url(sky.jpg)' },$('.box1').fadeIn(1000));
}
});
Markup:
<div class="Content">
<label>Search Bing</label>
<input type="text" />
<input type="button" value="search" />
</div>
<div class="box1"></div>
css:
.box1 {background-repeat:no-repeat; width:800px; height:600px; display:none; position:relative;}
.Content { position:absolute; left:20px; top:20px; z-index:100;}
.Content label { color:White;}
hy vọng điều này giúp
Một mẫu nhỏ trên: http://xgreen.co.uk/test.htm
- 1. Làm mờ một phần cụ thể của hình nền
- 2. Làm thế nào để mờ dần thay đổi hình nền
- 3. Làm cho nền mờ dần/trong
- 4. Một cách để làm mờ trong nền khi tải?
- 5. Ajax.ActionLink tải định vị hình ảnh với độ mờ nền
- 6. 100% độ mờ đục UILabel trên nền mờ 50% (UIView?)
- 7. Android: Đặt màu nền và hình nền mờ trên Hoạt động
- 8. Độ mờ CSS - màu nền
- 9. GLSurfaceView - làm thế nào để làm cho nền mờ
- 10. mờ dần, làm mờ hình động thành uilabel
- 11. Tắt mờ nền trên ProgressDialog/AlertDialog trong Android
- 12. Cách nhận cửa sổ có nền mờ trong suốt
- 13. Hiệu ứng nền mờ Coderwall với canvas
- 14. Jquery mờ dần nền khi di chuột?
- 15. Qml và làm mờ hình ảnh
- 16. Làm mờ đường viền hình ảnh trong một lần xem hình ảnh
- 17. jQuery làm mờ hình ảnh mới
- 18. Android hình ảnh lập trình lát nền làm hình nền
- 19. Làm mờ màn hình xấu trong Oracle SQL Developer
- 20. Làm thế nào để thiết lập độ mờ đục nền và độ mờ đường viền trong XAML?
- 21. Làm cách nào để mờ dần trong ảnh nền bằng CSS3 Animation
- 22. Đạt được nền mờ ở NSWindow với API công khai?
- 23. Làm mờ nền của dạng nửa trong suốt (như kính Aero)
- 24. Làm thế nào để có được nền mờ trong xyplot trong R?
- 25. jquery: mờ dần trong hình ảnh sau khi hình ảnh
- 26. iphone mờ dần hình ảnh
- 27. hình nền trong suốt
- 28. Cách ngăn hình nền bị nhòe
- 29. DialogFragment với nền rõ ràng (không bị mờ)
- 30. Hình ảnh SVG mờ trong chrome dành cho Android
http://www.techerator.com/2010/11/how-to-make-a-css-background-slideshow-with-jquery/ works – TFD