Javascript bookdown文本脚注中的第五种第三十八种样式

Javascript bookdown文本脚注中的第五种第三十八种样式,javascript,css,r-markdown,pandoc,bookdown,Javascript,Css,R Markdown,Pandoc,Bookdown,我正在使用{}创建一个项目,我希望设置脚注的格式,使其在选中上标时直接出现在文本中,如第五篇第三十八篇文章中所述(参见示例)。其思想是,当用户单击脚注时,段落会展开以显示脚注文本,然后在脚注关闭时压缩回正常状态 我找到了一些实现这一点的资源: 堆栈溢出问题 然而,这些解决方案似乎都假设实际的脚注文本位于具有关联类的标记内。但是,从{bookdown}和Pandoc生成的HTML脚注似乎不是这样。HTML如下所示: “带有标题的数字和表格将放在” “数字 “和” “表格” “分别

我正在使用{}创建一个项目,我希望设置脚注的格式,使其在选中上标时直接出现在文本中,如第五篇第三十八篇文章中所述(参见示例)。其思想是,当用户单击脚注时,段落会展开以显示脚注文本,然后在脚注关闭时压缩回正常状态

我找到了一些实现这一点的资源:

  • 堆栈溢出问题
然而,这些解决方案似乎都假设实际的脚注文本位于具有关联类的
标记内。但是,从{bookdown}和Pandoc生成的HTML脚注似乎不是这样。HTML如下所示:


“带有标题的数字和表格将放在”

“数字
“和”

“表格”
“分别是环境。”


  • “这是一个奇特的脚注。” ,以及呈现的输出。我已成功隐藏页面底部的脚注,但无法在选中脚注上标时使脚注以文本形式显示


    有没有一种方法可以使用{bookdown}以这种方式设置脚注的样式?或者这是Pandoc的一个约束?

    Pandoc通过过滤器提供对输出的完全控制。下面是一个使用HTML/CSS方法隐藏/显示脚注的示例。有关如何将Lua过滤器与bookdown一起使用,请参阅此示例

    ——我们已经看到了多少音符。
    本地票据编号=0
    本地fn\u打开\u模板=[[%d
    ]]
    本地fn_close=''
    本地样式\u css=[[
    输入[type=checkbox][id |=fn]+span{display:none;}
    输入[type=checkbox][id |=fn]:选中+span{display:block;}
    ]]
    --对脚注使用自定义HTML。
    功能说明(注)
    注释编号=注释编号+1
    本地fn\u打开=fn\u打开\u模板:格式(
    注号,注号,注号,注号,注号)
    返回{
    pandoc.RawInline('html',fn_open),
    潘多克斯潘(
    pandoc.utils.blocks_至_inline(注:内容),
    pandoc.Attr(字符串格式('fn-%d-content',注释号))
    ),
    pandoc.RawInline('html',fn_close)
    }
    结束
    功能元(Meta)
    本地标头_includes=meta['header-includes']
    --确保标题_包括一个金属工
    如果不包括标题,则
    标头_includes=pandoc.MetaList{}
    elseif头_包括.t~='MetaList',然后
    header_includes=pandoc.MetaList{header_includes}
    结束
    表1.插入(
    标题u包括:,
    元块{pandoc.RawBlock('html',style_css)}
    )
    meta['header-includes']=头包含
    返回元
    结束
    
    不久前我解决了这个问题……这是……谢谢!我对Lua过滤器非常不熟悉,因此如果我遗漏了什么,请提前道歉。我在上面添加了Lua过滤器(更新了repo和渲染示例),但脚注没有显示/隐藏选项。相反,它现在总是直接显示在文本中的脚注编号之后。我看到这已经成功地重构了HTML代码,所以可能我缺少了一些需要的CSS?我没有使用bookdown进行检查,可能CSS的插入方式有问题。你能尝试添加c吗
    样式的内容\u css
    ,即
    [[
    ]
    之间的部分,通过一个单独的文件,如前所述?这就成功了!我还添加了一些额外的样式,使脚注明显不同于周围的文本(更新的示例)。唯一缺少的是脚注编号改为“x”“当脚注扩展到显示时,但我现在可以没有它。谢谢