《手機(jī)端UI框架light7為什么不會(huì)執(zhí)行jquery和Javascript代碼?》要點(diǎn):
本文介紹了手機(jī)端UI框架light7為什么不會(huì)執(zhí)行jquery和Javascript代碼?,希望對(duì)您有用。如果有疑問(wèn),可以聯(lián)系我們。
相關(guān)主題:html5和webapp
今天第一次使用手機(jī)端UI框架Light7,很漂亮,但是問(wèn)題馬上就來(lái)了,
你會(huì)發(fā)現(xiàn)你的jquery或javascdript代碼不會(huì)被執(zhí)行到。
這是因?yàn)槟J(rèn)是開(kāi)啟了router,這個(gè)功能意味著當(dāng)你切換頁(yè)面時(shí),light7是使用ajax方式加載,而原有的js代碼不會(huì)重新加載,因此不會(huì)執(zhí)行。
解決方法:
方式1、取消router,兩種方法
1、在light7.min.js中,把
router:!0,
改成:
router:!1,
2、或者在引入jquery.min.js后,引入light7.min.js前,進(jìn)行配置設(shè)置:
<script type='text/javascript' src='/public/js/jquery-2.1.4.min.js' charset='utf-8'></script> <script> $.config = { router: false } </script> <script type='text/javascript' src='/public/light7-build/dist/js/light7.min.js' charset='utf-8'></script>
或者,你預(yù)先用on綁定所有頁(yè)面的事件。但頁(yè)面多時(shí),不推薦這么做。
下面是一個(gè)不取消router的做法:
在每個(gè)頁(yè)面都會(huì)被執(zhí)行
$(document).on("pageInit", function() { var curUri =window.document.location.pathname; $('a.tab-item').removeClass('active').each(function (i) { var href=$(this).attr('href'); if(curUri == href ){ $(this).addClass('active'); return false; } }) });
取消light7的router有什么后果?
沒(méi)有,只是頁(yè)面切換沒(méi)有那么漂亮,有router時(shí),頁(yè)面切換會(huì)從右邊滑進(jìn)來(lái)。取消后,就是普通的加載新頁(yè)面。
最后,別忘了執(zhí)行:
$.init()//關(guān)鍵
上面的坑據(jù)說(shuō)SUI Mobile也有,light7是脫胎于SUI Mobile,但light7可以支持jquery。
轉(zhuǎn)載請(qǐng)注明本頁(yè)網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/14522.html