单击按钮转到 Jupyter 笔记本中的 URL

问题描述 投票:0回答:1

我希望在单击

http://example.com
时能够打开
ipywidgets.Button
(最好在同一选项卡中)。

我试过了

def on_click(btn):
  display(Javascript('window.open("http://example.com");'))

def on_click(btn):
  display(Javascript('window.location.href = "http://example.com";'))

作为

on_click
回调,但是当我单击按钮时没有任何反应。

python jupyter-notebook jupyter-lab ipywidgets
1个回答
0
投票

这是因为笔记本不知道在哪里显示 Javascript 对象,因此它会将其记录在控制台中,以便您 知道有些事情不对劲。一种解决方案是指出您的 显示到特定输出:

display, Javascript

out = widgets.Output()


def window_open_button(url):
    with out:
        display(Javascript(f'window.open("{url.tooltip}");'))


ss = widgets.Button(description="hello",
tooltip='https://www.google.com') ss.on_click(window_open_button)

with out:
    display(ss) out 

来源

© www.soinside.com 2019 - 2024. All rights reserved.