jquery 使用Javascript将文本从%%html打印到Jupyter笔记本单元格中

y1aodyip  于 2022-11-03  发布在  jQuery
关注(0)|答案(1)|浏览(117)

在Jupyter笔记本我们可能会使用一些神奇的功能快捷方式这样:

%%javascript
element.text('Hi')

这将按预期在当前单元格中输出。(如果我没弄错的话,这里的element代表jupyter notebook的DOM中的当前单元格)。
“嗨”

**问题:**是否有方法对%%html执行相同的操作?我的天真尝试不起作用。

%%html
<script>element.text('Hi');</script>

请注意,这样的构造工作得很好。

%%html
<script>alert('Hi');</script>

我对jQuery和notebook DOM结构不是很熟悉,所以欢迎一些解释。我读过一些类似的问题,比如16852885,但是没有找到相关的类比。

hec6srdp

hec6srdp1#

据我所知,element变量在%%html单元格中并不是直接可用的。要访问element变量,首先需要创建它。它应该是%%html单元格中<script>标记的父变量。获取<script>标记的一个简单方法是给予它一个ID。
如果您不需要jquery,可以执行以下操作:

%%html
<script id="unique">
    var element = document.getElementById('unique').parentElement;
    element.innerHTML = "Hi";
</script>

如果你想使用jquery,你应该先加载它:

%%html
<script src="https://code.jquery.com/jquery-3.6.1.min.js"></script>
<script id="unique2">
    var element = $('#unique2').parent();
    element.text("Hi (jquery)")
</script>

相关问题