如果用Ajax加载对象并如何选择对象并应用它们?
此代码有效,但我希望此代码在没有click事件的情况下运行。所以它会自动运行。
$(document).on("click",".button",function(e){
var imgcount = $('.slider img').length;
var slidesize = 100 / imgcount
var innersize = 100 * imgcount
$('.slider img').wrap('<div class="slide" />');
$('.slide').wrapAll('<div class="inner" />');
$('.inner').wrapAll('<div class="overflow" />');
$('.slide').css('width', slidesize + '%');
$('.inner').css('width', innersize + '%');
});
这是我加载内容的方式
$('.work-item-hover').click(function(){
var toLoad = $(this).attr('href')+' #content-post > *';
$('#content-post').slideUp('normal',loadContent);
$('#load').remove();
$('.content-post-wrap').append('<span id="load">LOADING...</span>');
$('#load').fadeIn('normal');
window.location.hash = $(this).attr('href').substr(0,$(this).attr('href').length-5);
function loadContent() {
$('#content-post').load(toLoad,'',showNewContent())
}
function showNewContent() {
$(document).ajaxComplete(function(){
$('#content-post').slideDown('slow',hideLoader());
});
答案 0 :(得分:1)
明确触发点击事件
$('.slide').css('width', slidesize + '%');
$('.inner').css('width', innersize + '%');
}).click();
答案 1 :(得分:0)
$(document).ready(function(){});
- 除此之外,请确保您在任何AJAX请求的成功函数中调用$('element').click();
。
答案 2 :(得分:0)
在您的情况下,showNewContent()
是您的成功方法。您可以在那里插入代码(或为方便起见将其包装在另一个命名函数中)。
function showNewContent() {
var imgcount = $('.slider img').length;
var slidesize = 100 / imgcount
var innersize = 100 * imgcount
$('.slider img').wrap('<div class="slide" />');
$('.slide').wrapAll('<div class="inner" />');
$('.inner').wrapAll('<div class="overflow" />');
$('.slide').css('width', slidesize + '%');
$('.inner').css('width', innersize + '%');
$('#content-post').slideDown('slow',hideLoader());
}
请注意,我删除了对.ajaxComplete()
的调用,因为showNewContent()
已.load()
注册complete handler
.load(toLoad,'',showNewContent())
{{1}}(仅限{{1}}对于这个单一的要求)。通过原始呼叫,您可以注册所有ajax请求。