开发者社区> 问答> 正文

根据 函数名 在文档中 定位:报错

比如html页面中有一个函数列表,点击某一个函数名,会读取整个文档并弹出子窗口显示,定位到选择的函数...

用jquery或Js能做到吗?

(用的PHP)


展开
收起
kun坤 2020-06-06 15:30:51 654 0
1 条回答
写回答
取消 提交回答
  • 点击某一个函数名,会读取整个文档并弹出子窗口显示

    - 这个无论是用原生js还是jquery都可以简单快速做到

    定位到选择的函数

    - 这个我认为做个锚就行了,如果不太清楚锚是干嘛的,可以参考一下这个

     html 网页中的锚点的使用介绍

    ######我知道锚,但问题是读取的文档是一个后台的方法类,无法也不能添加锚点...######

    你想搞一个方便从html页面中快速查看 某个语言的函数文档吧。

    类似于语言手册一样方便,或者是自己项目文档。

    例如,这样一个列表。

    1. json_decode
    2. json_encode

    点击后会用 js window.open, 指定大小的新窗口打对应的链接。

    如 点击 json_decode 弹开 http://php.net/manual/zh/function.json-decode.php

    ######是的,但就是不知道怎样定位到点击的函数方法######phpDesigner编辑器, 可以直接关连手册. ######回复 @ZeronoFreya : 用 class来选择
    例如列表 <div class="my_list"><ul><li>json_decode</li>....</ul></div>

    Jquery 选择就写成 $('.my_list > ul > li').click(function(){ open new window});

    或者直接就给函数列表加上某个class名 直接用 $('.my_li')选择就成了。

    哈哈,不知道你问是不是这样的。######很遗憾不是的...简单来说就是读取一篇文档,但你不能修改其内容,里面有一些关键字,在html里有对应的链接(其实没对应),单击连接后定位到关键字所在行... 类似查找功能######回复 @ZeronoFreya : 就是百度百科中的关键词连接一样对吧。

    又不能改html,你怎么知道一段html里某个是关键词。

    保存文档没有这个关键词链接,只能在web返回页面时加上,才是你说不能修改html原因吧。

    用php把关键词替换成超链接或者加个<span>标签。
    ------------------------------------------------------

    问的不清楚,估计连你自己都不知道要写成什么样的。######

    引用来自“dworry”的评论

    回复 @ZeronoFreya : 就是百度百科中的关键词连接一样对吧。

    又不能改html,你怎么知道一段html里某个是关键词。

    保存文档没有这个关键词链接,只能在web返回页面时加上,才是你说不能修改html原因吧。

    用php把关键词替换成超链接或者加个<span>标签。
    ------------------------------------------------------

    问的不清楚,估计连你自己都不知道要写成什么样的。
    无法编辑问题真的很....

    请原谅我不及格的语文成绩...

    比如html中是这样的:
    <ul>
        <li>hahaha</li>
        <li>...</li>
    </ul>





    后台控制器,不能改
    ...
    function hahaha(){
        ...
    }
    ...




    当我点击<li>hahaha</li>时,会把整个后台控制器作为文本文档读取到变量中,

    然后append到<mycode></mycode>,将包含此自定义标签的Div显示(模拟子窗口),

    这时就显示了后台控制器的所有方法,

    然后,定位到hahaha这个方法所在行...

    (别问我为啥这么做,上面要求的)

    基本来说,就是做一个后台控制器方法的预览器,无修改能力,但必须要同步...所以采用了读取后台控制器文档的方法,所以绝对不能动后台控制器的脑筋

    现在我能想到的就是一般文本编辑器所具有的查找功能,但不知道具体如何实现,百度一堆都是调用了一个函数,然后就没了,老实说,我想要的是思路...跑题了


    ######

    引用来自“dworry”的评论

    回复 @ZeronoFreya : 就是百度百科中的关键词连接一样对吧。

    又不能改html,你怎么知道一段html里某个是关键词。

    保存文档没有这个关键词链接,只能在web返回页面时加上,才是你说不能修改html原因吧。

    用php把关键词替换成超链接或者加个<span>标签。
    ------------------------------------------------------

    问的不清楚,估计连你自己都不知道要写成什么样的。

    引用来自“ZeronoFreya”的评论

    无法编辑问题真的很....

    请原谅我不及格的语文成绩...

    比如html中是这样的:
    <ul>
        <li>hahaha</li>
        <li>...</li>
    </ul>





    后台控制器,不能改
    ...
    function hahaha(){
        ...
    }
    ...




    当我点击<li>hahaha</li>时,会把整个后台控制器作为文本文档读取到变量中,

    然后append到<mycode></mycode>,将包含此自定义标签的Div显示(模拟子窗口),

    这时就显示了后台控制器的所有方法,

    然后,定位到hahaha这个方法所在行...

    (别问我为啥这么做,上面要求的)

    基本来说,就是做一个后台控制器方法的预览器,无修改能力,但必须要同步...所以采用了读取后台控制器文档的方法,所以绝对不能动后台控制器的脑筋

    现在我能想到的就是一般文本编辑器所具有的查找功能,但不知道具体如何实现,百度一堆都是调用了一个函数,然后就没了,老实说,我想要的是思路...跑题了


    就是在线版的 ctage

    你用过 sublime text + ctage 或者 是 gvim + ctage

    代码跳转的。

    ctage 在项目文档中生成 .tage 文本,(看下面是我项目中生成的.tage一段内容) 你可以根据这段内容来定位到要读取的代码。

    secure_cookie	.\system\core\Security.php	/^		$secure_cookie = (config_item('cookie_secure') === TRUE) ? 1 : 0;$/;"	v
    security	.\system\core\Input.php	/^		$this->security =& $SEC;$/;"	v
    see_json	.\application\helpers\common_helper.php	/^    function see_json($json) {$/;"	f
    segment	.\system\core\URI.php	/^	function segment($n, $no_result = FALSE)$/;"	f
    segment_array	.\system\core\URI.php	/^			$segment_array = 'rsegment_array';$/;"	v
    segment_array	.\system\core\URI.php	/^			$segment_array = 'segment_array';$/;"	v

    如我定义的 see_json 函数

    第一列是函数名, 第二列是所在文件, 第三个是正则函数名所有行。

    see_json    .\application\helpers\common_helper.php    /^    function see_json($json) {$/;"    f

    可以在本地生成 .tage文件与代码一起提交上去。

    只要写个php解析这个.tage文件最行了。

    ######谢谢,我研究一下
    2020-06-06 15:30:57
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
JCLI使用说明文档 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载