方法一:wxnavigateTo(OBJECT) 保留当前页面,跳转到应用内的某个页面,使用wxnavigateBack可以返回到原页面。
OBJECT参数说明:
参数 类型 必填 说明 url String 是 需要跳转的应用内页面的路径 , 路径后可以带参数。参数与路径之间使用分隔,参数键与参数值用=相连,不同参数用&分隔;如 ‘pathkey=value&key2=value2’ success Function 否 接口调用成功的回调函数 fail Function 否 接口调用失败的回调函数 complete Function 否 接口调用结束的回调函数(调用成功、失败都会执行)
方法二:wxredirectTo(OBJECT) 关闭当前页面,跳转到应用内的某个页面。
OBJECT参数说明:
参数 类型 必填 说明 url String 是 需要跳转的应用内页面的路径 success Function 否 接口调用成功的回调函数 fail Function 否 接口调用失败的回调函数 complete Function 否 接口调用结束的回调函数(调用成功、失败都会执行)
3
方法三:wxnavigateBack(OBJECT) 关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages()) 获取当前的页面栈,决定需要返回几层。 OBJECT参数说明:
参数 类型 默认值 说明 delta Number 1 返回的页面数,如果 delta 大于现有页面数,则返回到首页。
译者注 本文原名《Site Navigation with PHP》 原文详述了如何用PHP编程来做出效果理想的网页导航条 本文只选译了其中的部分文章 所选取的部分是文章精髓之所在 只要大家能弄懂这部分内容就可以用同样的原理 思想做出我们需要的效果来 希望给读者能起到抛砖引玉的作用 本文只需要读者具备PHP HTML的初步知识就可以基本读懂了
译 文 如大家所知PHP对于用数据库驱动的网站(making database driven sites)来讲可谓功能强大 可是我们是否可以用它来做点其他事情呢?PHP给了我们所有我们期望的工具 for与while的循环结构 数学运算等等 还可以通过两种方式来引用文件 直接引用或向服务器提出申请 其实何止这些 让我们来看一个如何用它来做导航条的例子 完整的原代码 <!—— This <? is how you indicate the start of a block of PHP code ——> <?php # and this # makes this a PHP ment
$full_path = getenv( REQUEST_URI )
$root = dirname($full_path) $page_file = basename($full_path) $page_num = substr($page_file strrpos($page_file _ ) + strpos($page_file l ) (strrpos($page_file _ ) + ))
$partial_path = substr($page_file strrpos($page_file _ ))
$prev_page_file = $partial_path _ (string)($page_num ) l $next_page_file = $partial_path _ (string)($page_num+ ) l
$prev_exists = file_exists($prev_page_file) $next_exists = file_exists($next_page_file)
if ($prev_exists)
{ print <a $root/$prev_page_file >previous</a> if ($next_exists)
{ print | } if ($next_exists)
{ print <a $root/$next_page_file >next</a> }
?>//原程序完
代码分析 OK! 前面做了足够的铺垫工作 现在让我们来看看如何来用PHP来完成这项工作
<!—— This <? is how you indicate the start of a block of PHP code ——> <?php # and this # makes this a PHP ment
$full_path = getenv( REQUEST_URI )
$root = dirname($full_path) $page_file = basename($full_path)
/ PHP函数getenv()用来取得环境变量的值 REQUEST_URI的值是紧跟在主机名后的部分URL 假如URL是 那它的值就为/dinner/l 现在我们将得到的那部分URL放在变量$full_path中 再用dirname()函数来从URL中抓取文件目录 用basename()函数取得文件名 用上面的例子来讲dirname()返回值 /dinner/ basename()返回 l 接下来的部分相对有些技巧 假如我们的文件名以story_x的格式命名 其中x代表页码 我们需要从中将我们使用的页码抽出来 当然文件名不一定只有一位数字的模式或只有一个下划线 它可以是l 同样它还可以叫做l甚至是l 而我们真正想要的就是位于最后一个 _ 和 之间的东东 可采用如下方法 / $page_num = substr($page_file strrpos($page_file _ ) + strpos($page_file l ) (strrpos($page_file _ ) + )) / substr($string $start [$length] )函数给了我们字符串$string中从$start开始 长为$length或到末尾的字串(方括号中的参数是可选项 如果省略$length substr就会返回给我们从$start开始直到字符串末尾的字符串) 正如每一个优秀的C程序员告诉你的那样 代表字符串开始的位置开始的数字是 而不是
函数strrpos($string $what)告诉我们字符串$what在变量$string中最后一次出现的位置 我们可以通过它找出文件名中最后一个下划线的位置在哪 同理 接着的strpos($string $what)告诉我们 首次出现的位置 我们通过运用这三个函数取得在最后一个 _ 和 之间的数字(代码中的strpos()+ 代表越过 _ 自己)
剩下的部分很简单 首先为上页和下页构造文件名 / $partial_path = substr($page_file strrpos($page_file _ ))
$prev_page_file = $partial_path _ (string)($page_num ) l $next_page_file = $partial_path _ (string)($page_num+ ) l
/(string)($page_num+ )将数学运算$page_num+ 的结果转化为字符串类型 这样就可以用来与其他字串最终连接成为我们需要的文件名
/ /现在检查文件是否存在(这段代码假设所有的文件都位于同样的目录下) 并最终给出构成页面导航栏的HTML代码
/ $prev_exists = file_exists($prev_page_file) $next_exists = file_exists($next_page_file)
if ($prev_exists)
{ print <a $root/$prev_page_file >previous</a> if ($next_exists)
{ print | } if ($next_exists)
{ print <a $root/$next_page_file >next</a> }
lishixinzhi/Article/program/PHP/201311/20771
今天使用中继器来实现一个简单的二级导航栏。这是一款折叠形可变导航,一般应用在系统页面左侧。它的最大优势是:1、菜单根据中继器配置的列表动态加载整个导航菜单(后期系统维护升级可快速增减菜单)。2、二级导航菜单数量不等也可以正常工作(突破局限)。
下面以制作一个简单的后台管理系统导航为例。
一、准备元件
1、将工作界面划分为三块:头部放一个动态面板,里面放系统logo和系统名称;左侧导航区域放一个动态面板,里面放一个中继器;右侧放一个内联框架(动态交互区域)。
2、双击中继器,进入中继器编辑模式。复制矩形元件并粘贴多三个,共四个按右对齐排列。如下图所示,一级导航(w:180px,h:30px),二级导航(w:160px,h:25px)。注意,各矩形件元件间的行高是10px,各矩形元件的填入文字及命名见图。
将所有二级导航选中,将它们设置为一个组合,命名为:组合_二级导航。这个组合用于点击一级导航进行交互时,实现组合整体展开/收缩(隐藏/显示)。
再将它们设置为一个选项组,命名为:选项组_二级导航。这个选项组用于点击二级导航进行交互时,实现只选中一个二级导航。 注意 :要将所有二级导航选中,右键选中:选项组,命名为:选项组_二级导航。 不是将它们的组合设置为选项组 。
同样,将一级导航也设置为一个选项组,命名为:选项组_一级导航。
二、设置元件样式
1、设置中继器的行距。即间距为10px。
2、设置一级导航和二级导航的鼠标悬停、选中的样式。一级导航和二级导航鼠标悬停样式设置, 填充 颜色为:FFCC99;一级导航选中样式设置, 字色 为:FFCCCC;二级导航选中样式设置, 填充 颜色为:FFCCCC;
三、设置导航数据。以后系统升级,增减导航就是通过设置导航数据来完成。
1、设置中继器样式数据。选中:中继器,选中:样式。
2、设置样式数据列名。双击第一列:Column0,重新命名为:FirstLevel。这一列对应的是一级导航。双击第二列,命名为:SecLevel1。重复 *** 作,得到 SecLevel2、SecLevel3。SecLevel1、SecLevel2、SecLevel3分别对应的是二级导航1、二级导航2、二级导航3。
3、设置样式数据内容。这是导航显示的结构数据,或者说,导航将根据设置的样式数据内容来显示。以后系统升级,只要修改这个数据内容即可。根据需求,这里设置的数据如下:
四、设置交互
1、设置载入时事件。在载入元件时,根据显示样式数据设置的值作为导航文本。
选中:中继器,选中:交互。选择事件:载入时,选择:设置文本,选择:添加目标。选中:一级导航。点击 fx,d出编辑框。如下图:
删除中间输入框中的:一级导航。点击:插入变量或函数,选中:ItemFirstLeve,得到结果。如下图:
同样,设置二级导航1、二级导航2、二级导航3 的 fx 值分别为 ItemSecLeve1、ItemSecLeve2、ItemSecLeve3。得到结果,如下图:
2、设置每项加载事件。在每项加载时,根据显示样式数据设置的值显示或隐藏二级导航。从而实现二级导航菜单数量不等也可以工作。
选中:中继器,选中:交互。选择事件:每项加载,选择:启用情形。添加条件,第一个框选中:值,点击第二个框:fx,选中:ItemSecLevel1。如下图:
在此情形下,添加动作,选择:显示/隐藏,添加目标:二级导航1,选中:隐藏动作。这个设置是实现当二级导航1对应的数据值为空时,隐藏该二级导航菜单选择项。同样,设置二级导航2、二级导航3。得到结果,如下图:
3、设置二级导航的组合整体展开/收缩。即当点击一下一级导航时,或展开,或隐藏其下面全部二级导航。
选中:一级导航,点击:新建交互,选择:单击时,选择动作:显示或隐藏。选择目标:组合_二级导航,选择:切换。设置参数,如下图:
如果想实现初次加载导航时,二级导航是折叠的。即只看到一级导航。则可以将二级导航的组合设置为隐藏。
双击:中继器,选中:组合_二级导航,右键,选择:设为隐藏。
4、设置二级导航的单击事件。二级导航选中时,父级也选中。同时,在内联框架中打开链接页面。
选中:二级导航1,选择事件:单击时,点击:启用情形,点击:添加条件,选择:值,点 fx,点击:插入变量或函数,选择:ItemSecLevel1,设置值:角色列表。添加动作:设置选中,选择目标:二级导航1,值为真。添加目标,选中:一级导航,值为真。添加动作:框架中打开链接,选择元件:内联框架,选择页面:角色列表。
同样,添加情形2,设置二级导航1对应的第二行数据:系统日志。如果有第3行,也同样设置。得到结果,如下图:
同样,设置:二级导航2、二级导航3 的单击事件。
至此,使用中继器来实现二级导航栏制作完毕。按F5预览下效果。
以上就是关于小程序的底部导航栏怎么绑定接口 而不是跳转页面全部的内容,包括:小程序的底部导航栏怎么绑定接口 而不是跳转页面、怎样用PHP来给网页做导航栏、Axure中继器实现二级导航栏等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)