假设在IPython笔记本中创建了一个ipywidget,如下所示:
from ipywidgets import widgets
i = widgets.IntText()
有没有办法从Javascript设置值?我怀疑我需要知道小部件的一些通信。或者是否有更好的方法在Python中设置一个从Javascript设置的变量?
用例是我想将鼠标点击位置(通过Javascript获取)位置发送回Python。
答案 0 :(得分:4)
感谢SylvainCorlay和ipython gitter的jasongrout,他们能够通过这个来谈谈我:
republished to another exchange when any of the following events occur:
The message is rejected (basic.reject or basic.nack) with requeue=false,
The TTL for the message expires; or
The queue length limit is exceeded.
使用事件调用onclick,以及Python x.model_id和y.model_id。
答案 1 :(得分:0)
您可以使用ipython jslink
小部件在JavaScript端绑定小部件模型。
from ipywidgets import IntText, IntSlider, jslink
from IPython.display import display
text, slider = IntText(), IntSlider()
link = jslink((text, 'value'), (slider, 'value'))
display(text, slider)
如果您需要纯JavaScript解决方案,可以使用小部件ID从小部件管理器处理小部件模型。