首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在<body>中没有onload的情况下初始化brython

如何在<body>中没有onload的情况下初始化brython
EN

Stack Overflow用户
提问于 2017-11-28 03:49:00
回答 1查看 332关注 0票数 2

似乎初始化brython需要这样做:

代码语言:javascript
运行
复制
<body onload="brython()">

在链接了brython.js之后,我尝试在另一个<script>中调用js中的brython(),但似乎没有被调用。

当我最终在浏览器控制台中调用brython时,它会调用brython,甚至执行我的python代码。

为了给出一个完整的例子来说明什么不起作用,这里有一个例子。我可能对javascript如何以及何时编译和执行缺乏一些基本的知识……

代码语言:javascript
运行
复制
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="/js/brython.js"></script>
</head>

<!-- <body onload="brython()"> -->
<body>

<script type="text/javascript">
console.log("calling brython() here");
brython();
console.log("I just called brython()");

</script>
<script type="text/python">
from browser import document, alert

def echo(*args):
    alert("Hello {} !".format(document["zone"].value))

document["test"].bind("click", echo)
print("what")

</script>
<p>Your name is : <input id="zone" autocomplete="off">
<button id="test">clic !</button>
</body>

</html>
EN

回答 1

Stack Overflow用户

发布于 2017-12-14 20:28:28

函数brython()搜索所有具有type="text/python"属性的脚本,并执行其中的Python代码。

在您的示例中,在调用函数时,Python脚本尚未加载,因此找不到它并因此未被执行也就不足为奇了。如果您将Javascript程序放在Python脚本之后,它将按照您的预期工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47518719

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档