jquery ajax php中 css样式不显示,Chrome浏览器在Ajax同步调用之前不会显示Jquery的动态css Propery更改...

我有如下因素HTML节点:

上的click事件会触发聊天对象的方法

this.addUser = function(trigger_node, id, is_silent, session, show_block_message){

if(trigger_node){

this.bk_trigger_node.html = trigger_node.innerHTML;

this.bk_trigger_node.cn = trigger_node.className;

trigger_node.innerHTML = '';

jQuery(trigger_node).addClass("loader");

jQuery(trigger_node).removeClass("bpurple");

jQuery(trigger_node).removeClass("bgray");

jQuery(trigger_node).removeClass("button");

}

//alert('if this is executed then it displays the previous changes of the node');

if(trigger_node.innerHTML == ''){

this.addUserToChat(id, is_silent, session, show_block_message);

}

if(trigger_node){

trigger_node.innerHTML = this.bk_trigger_node.html;

trigger_node.className =this.bk_trigger_node.cn;

}

}

addUserToChat():

this.addUserToChat = function (id, is_silent, session, show_block_message){

var response = this.chat_tabs.addTab(id, null);

if(response.error){

callUrl("/me/chat/remove-session/id/"+id);

this.chat_tabs.removeTab(id);

if(show_block_message) alert(response.message);

}else{

this.createTabsBar();

if(!is_silent){

this.switchTab(id);

this.resetContainer(is_silent);

}

if(id == this.chat_tabs.active_tab){

this.active_chat_obj.refresh(session);

}

if(this.closed){

if(this.stop_check){

return;

}

this.resetContainer();

this.switchTab(id);

}

callUrl("/me/chat/add-session/id/"+id);

}

}

chat_tabs.addTab():

// creates and adds the a tab

this.addTab = function(id,name,user_data,session){

var exists = this.getTab(id);

if(!exists){

if(session){

var user_session_id = session.id;

var user_session_data = session.data;

}else{

var session = this.createSession(id);

if(session.error){

return session;

}

var user_session_id = session.id;

var user_session_data = session.data;

}

if(name){

var user_name = name;

}else{

var user_name = this.getName(id);

}

if(user_data){

var user_data = user_data;

}else{

var user_data = this.getData(id);

}

var ob = new Object({

user_id: id,

user_name: user_name,

user_data: user_data,

user_session_id: user_session_id,

user_session_data: user_session_data,

has_new:false,

chat_screen: new ChatScreen(session, id, user_name, user_data, this.main_user_id, this.main_user_photo)

});

this.chat_users.push(ob);

return ob;

}else{

return exists;

}

}

callUrl():

function getUrl(url){

return jQuery.ajax({ type: 'GET', url: url, async: false }).responseText;

}

的一点是,该方法addUserToChat()包含syncronous Ajax调用。

Chrome的问题在于trigger_node更改未显示。如果你用内置的JS debuger观看,那么即使在显示的情况下也可以正常运行。同样,如果你取消注释。

它在Mozilla(最新版本)上运行.Crome也是最新版本。 我可以观察到,它在等待ajax响应的时候,页面对诸如悬停,提示等事件没有响应。

您对此有何建议?我怎样才能实现一个workarround方法?

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值