终于把手机版的分页代码改造成伪静态显示了。本来都想认输,找不到问题和解决方法了。其实早就基本成功了,上一页和下一页都静态了。就剩下中间的选择转跳页面的地方有个跳不到指定页面的问题。一直以来都是想改进哪,就改了,都没有花太多时间就成了。当然很多解决方案都是通过反复搜索网上的前人经验,很快找到了下手的地方。这次就是一直没有找到出错的地方。有些愚蠢地在$multipage有关的一系列html,php,module,function,class中不断追踪寻找。没有想到手机版的分页功能的最终处理是由JQuery代码处理的。最终还是搜索代码找到地方的。因为电脑版没有问题,手机版有问题的地方有一个“第XX页”的文字标示,这点与电脑显示不同。XX是个变量,我就搜索这个“第”或“页”字(它一定在某个文件里存储着),实际上我搜索的是【第'】,这样就找到了源代码。早就应该这样想嘛!有时人很笨!说好听点,是很大意和想当然。
功夫不负有心人。将来手机版其它的分页功能都类似了。所以全面静态化没有大问题了。
另外,前两天已经把手机版网址后面跟着的小尾巴&mobile=2去掉了。所以静态化后的网址,电脑版的网址和手机版的网址就基本一致和互用了。
最后说一下,分页代码的最后的改进的地方,在文件./static/js/mobile/common.js中
原来是这样的
$('#dumppage').on('change', function() {
var href = (prevpage || nextpage);
window.location.href = href.replace(/page=\d+/, 'page=' + $(this).val());
现在改成这样的
$('#dumppage').on('change', function() {
var href = (prevpage || nextpage);
if(href.indexOf('html') !=-1){
window.location.href = href.substr(0,href.lastIndexOf('-')+1)+ $(this).val()+'.html';
}
else
{
window.location.href = href.replace(/page=\d+/, 'page=' + $(this).val()); }
|