Brython 在浏览器用Python取代JavaScript

发布时间:2019-06-21 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Brython 在浏览器用Python取代JavaScript脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

看到的一个有趣的 OPEn Source 项目(Brython), 虽然我觉得没什么实用性~ XD

不过, 既然是蛇年, 就让 浏览器 也 蛇化 吧~

brython

brython 的说明:

Brython的目标是用Python取代JavaScript,使Python成为web浏览器的脚本语言。

Brython - 在浏览器用 Python 取代 JavaScript

此项目载入一个 js 文件, 然后就可以用 Python 语法来操作 DOMAJAX... 等等的事情. (写在 <script type="text/python">里面)

Brython 使用方式(范例)

说明文件: Brython document,

下述范例取自此篇:

<htML>
<head>
<script src="/brython.js"></script>
</head>
<body onLoad="brython()">
<script type="text/python">
def echo():
    alert(doc["zone"].value)
</script>
<input id="zone"><button onclick="echo()">clic !</button>
</body>
</html>

Brython Syntax 笔记

Brython Syntax 说明: Brython Syntax

建立 a link

link1 = A('Brython', href='http://www.brython.info')
link2 = A(B('Python'), href='http://www.python.org')

建立 a 并 附加属性

link = A()
link <= B('connexion')
link.href = 'http://example.COM'

AJAX

req = ajax()
req.on_complete = on_complete
req.set_timeout(timeout, err_msg)
req.open('POST', url, True)
req.set_header('content-type', 'application/x-www-form-urlencoded')
req.send(data)

Local storage

local_storage['foo'] = 'bar'
LOG(local_storage['foo'])
del local_storage['foo']
log(local_storage['foo']) # PRints None

text/python 写法范例

<script type='text/python'> def mouse_move(ev): doc["trace"].value = '%s %s' %(ev.x,ev.y)

doc["zone"].onmousemove = mouse_move
</script>

Brython 相关 Library (库)

库的套件可见: Brython - Compiling and running

这边有很多必须的 Library, 在这边列一些应用类的.

  • py2js.js : does the conversion between the tokens and the Javascript code
  • py_dom.js : interaction with the HTML document (DOM)
  • py_ajax.js : Ajax implementation
  • py_local_storage.js : implementation of the HTML5 local storage
  • py_svg.py : SVG support (vector graphics)

by Tsung under CC-by-sa

脚本宝典总结

以上是脚本宝典为你收集整理的Brython 在浏览器用Python取代JavaScript全部内容,希望文章能够帮你解决Brython 在浏览器用Python取代JavaScript所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。