不同Jquery版本引發(fā)的問題解決
這是最近三個月寫得最完美的作品了,用JS實現(xiàn)了一個拖拽排序,效果圖如下:
一開始進入項目有了這樣的拖拽實現(xiàn)想法,一點頭緒沒有,請教師兄說這樣實現(xiàn)不可能。當時覺得很遺憾,打算用傳統(tǒng)的方式去實現(xiàn)。正構(gòu)思傳統(tǒng)的方式,感覺時間充裕,就回到了拖拽的想法上來。終于實現(xiàn)了。其實我不是炫耀這個(當然,感興趣的話,可以QQ907087894聯(lián)系我,我會整理Demo上傳到資源中心),我想說的是下文。
就在我實現(xiàn)的同時,師姐幫另一個伙伴寫了一個傳統(tǒng)方案的Demo,他進行的是修改的排序。在她機器上演示的時候,當時就覺得很震撼,在她的鼠標滑動下,走馬觀花了一遍代碼,看著長長的鏈式JS,頓生仰慕。當時就想,等項目結(jié)了,好好研究她這個。
2個月后,等來了,閑暇。緣于對JS的生疏,很吃力的勉強看懂了代碼,運行的時候,飛來了一只蟲子。移動的時候,一直提示無選擇項。
for(var j = 0; j < div_count; j++){
if(($("#eva_div_all").children().eq(j).children().children().eq(0).attr('checked'))=='checked'){
var valid_checked = $("#eva_div_all").children().eq(j).children().children().eq(0).attr('id');
if(valid_checked==checked_name){alert(alert_des);return;}
/* 對調(diào) */
var temp = $("#eva_div_all").children().eq(j).attr('id');
var temp_html = $("#"+temp).html();
var before_temp = $("#eva_div_all").children().eq(j+num).attr('id');
var before_temp_html = $("#"+before_temp).html();
$("#"+temp).html('');
$("#"+before_temp).html('');
$("#"+temp).html(before_temp_html);
$("#"+before_temp).html(temp_html);
checked = 'true';
new_order();
}
}
if(checked=='false'){
alert('無選擇項??!');
}
儼然飛蟲進入了眼睛,不斷的揉啊揉,就是出不來,一天就是這么過的。
無奈了,解鈴還需系鈴人,她來了,調(diào)試了許久許久,還不是不行,后來對比她本地的代碼,毫無差異,她本地也運行正常。后來我們就達成了共識瀏覽器問題。
$("#eva_div_all").children().eq(j).children().children().eq(0).attr('checked'))=='checked')
瀏覽器對ehecked屬性支持不一樣。
她是firefox 23, 我的是16.0.1。很開心,終算找到問題的癥結(jié)了,此事算是告一段落。
一個星期后的今天,用同樣的瀏覽器訪問服務器上的資源,又不存在這個問題了。接著研究吧。
還好,不知道哪來的靈感,把原引入的jquery.js換成jquery-1.7.2.min.js,問題終于再次被解決。
不知道還會不會在被推翻,呵呵~~
相關文章
如何清除IE10+ input X 文本框的叉叉和密碼輸入框的眼睛圖標
從IE 10開始,type=”text” 的 input 在用戶輸入內(nèi)容后,會自動產(chǎn)生一個小叉叉(X),方便用戶點擊清除已經(jīng)輸入的文本,下面通過本文給大家介紹下如何清除IE10+ input X 文本框的叉叉和密碼輸入框的眼睛圖標2016-12-12JavaScript+html實現(xiàn)前端頁面滑動驗證(2)
這篇文章主要為大家詳細介紹了JavaScript+html實現(xiàn)前端頁面滑動驗證的第二種方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-06-06js 創(chuàng)建對象 經(jīng)典模式全面了解
下面小編就為大家?guī)硪黄猨s 創(chuàng)建對象 經(jīng)典模式全面了解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-08-08