āĻĒā§āĻ°āĻāĻžāĻļāĻŋāĻ¤ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒ āĻĒā§āĻ°āĻāĻžāĻļ āĻŦā§āĻ°āĻžāĻāĻĨāĻ¨ 3.9 (āĻŦā§āĻ°āĻžāĻāĻāĻžāĻ° āĻĒāĻžāĻāĻĨāĻ¨) āĻāĻ¯āĻŧā§āĻŦ āĻŦā§āĻ°āĻžāĻāĻāĻžāĻ° āĻ¸āĻžāĻāĻĄā§ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻāĻĨāĻ¨ 3 āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻŋāĻ āĻ˛ā§āĻ¯āĻžāĻā§āĻā§āĻ¯āĻŧā§āĻ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§, āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻ¯āĻŧā§āĻŦā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĻžāĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻĒāĻžāĻāĻĨāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ
āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧāĨ¤ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§āĻ° āĻā§āĻĄ āĻĒāĻžāĻāĻĨāĻ¨ā§ āĻ˛ā§āĻāĻž āĻāĻā§ āĻāĻŦāĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻŋāĻ¤āĻ°āĻŖ BSD āĻ˛āĻžāĻāĻ¸ā§āĻ¨ā§āĻ¸ā§āĻ° āĻ
āĻ§ā§āĻ¨ā§āĨ¤ āĻ¨āĻ¤ā§āĻ¨ āĻ°āĻŋāĻ˛āĻŋāĻ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ˛ā§āĻ˛ā§āĻāĻ¯ā§āĻā§āĻ¯ āĻĒāĻžāĻāĻĨāĻ¨ 3.9 āĻāĻŦāĻ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻž āĻšāĻā§āĻā§āĨ¤
āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻā§āĻā§ brython.js и brython_stdlib.js, āĻāĻāĻāĻ¨ āĻāĻ¯āĻŧā§āĻŦ āĻĄā§āĻā§āĻ˛āĻĒāĻžāĻ° āĻĒāĻžāĻ°ā§āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĻžāĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻĒāĻžāĻāĻĨāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻžāĻāĻĄā§ āĻ¸āĻžāĻāĻā§āĻ° āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻāĻĨāĻ¨ āĻāĻžāĻˇāĻžāĨ¤ āĻĒā§āĻˇā§āĻ āĻžāĻā§āĻ˛āĻŋāĻ¤ā§ āĻĒāĻžāĻāĻĨāĻ¨ āĻā§āĻĄ āĻ
āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻ¤ā§, āĻā§āĻ¯āĻžāĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ Ņ mime-ŅиĐŋĐžĐŧ ÂĢtext/pythonÂģ. ĐĐžĐŋŅŅĐēĐ°ĐĩŅŅŅ ĐēĐ°Đē вŅŅŅаиваĐŊиĐĩ ĐēОда ĐŊĐ° ŅŅŅĐ°ĐŊиŅŅ, ŅĐ°Đē и СаĐŗŅŅСĐēĐ° вĐŊĐĩŅĐŊиŅ
ŅĐēŅиĐŋŅОв (). ĐС ŅĐēŅиĐŋŅĐ° ĐŋŅĐĩĐ´ĐžŅŅавĐģŅĐĩŅŅŅ ĐŋĐžĐģĐŊŅĐš Đ´ĐžŅŅŅĐŋ Đē ŅĐģĐĩĐŧĐĩĐŊŅĐ°Đŧ и ŅОйŅŅиŅĐŧ DOM.
āĻĒāĻžāĻāĻĨāĻ¨ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ¤ā§ āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻžāĻĄāĻŧāĻžāĻ, āĻāĻāĻŋ DOM āĻāĻŦāĻ āĻāĻžāĻāĻžāĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻ¯ā§āĻŽāĻ¨ jQuery, D3, Highcharts āĻāĻŦāĻ Raphael āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻ¨ā§āĻāĻžāĻ°āĻ
ā§āĻ¯āĻžāĻā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻŋāĻļā§āĻˇ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻ
āĻĢāĻžāĻ° āĻāĻ°ā§āĨ¤ CSS āĻĢā§āĻ°ā§āĻŽāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ Bootstrap3, LESS āĻāĻŦāĻ SASS āĻāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤āĨ¤
āĻŦā§āĻ˛āĻ āĻĨā§āĻā§ āĻĒāĻžāĻāĻĨāĻ¨ āĻā§āĻĄ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻš āĻāĻ°āĻž āĻšāĻā§āĻā§ ĐŋŅОиСвОдиŅŅŅ ŅĐĩŅĐĩС ĐŋŅĐĩдваŅиŅĐĩĐģŅĐŊŅŅ ĐēĐžĐŧĐŋиĐģŅŅиŅ ŅŅĐžĐŗĐž ĐēĐžĐŗĐ´Đ°, вŅĐŋĐžĐģĐŊŅĐĩĐŧŅŅ ОйŅайОŅŅиĐēĐžĐŧ Brython ĐŋĐžŅĐģĐĩ СаĐŗŅŅСĐēи ŅŅŅĐ°ĐŊиŅŅ. ĐĐžĐŧĐŋиĐģŅŅиŅ иĐŊиŅииŅŅĐĩŅŅŅ ĐŋŅи ĐŋĐžĐŧĐžŅи вŅСОва ŅŅĐŊĐēŅии brython(), ĐŊĐ°ĐŋŅиĐŧĐĩŅ ŅĐĩŅĐĩС дОйавĐģĐĩĐŊиĐĩ ÂĢÂģ. ĐĐ° ĐžŅĐŊОвĐĩ Python ĐēОда ŅĐžŅĐŧиŅŅĐĩŅŅŅ ĐŋŅĐĩĐ´ŅŅавĐģĐĩĐŊиĐĩ ĐŊĐ° ŅСŅĐēĐĩ JavaScript, ĐēĐžŅĐžŅĐžĐĩ СаŅĐĩĐŧ вŅĐŋĐžĐģĐŊŅĐĩŅŅŅ ŅŅĐ°ŅĐŊŅĐŧ JavaScript-двиĐļĐēĐžĐŧ ĐąŅĐ°ŅСĐĩŅĐ° (Đ´ĐģŅ ŅŅавĐŊĐĩĐŊиŅ, ĐŋŅĐžĐĩĐēŅ PyPy.js āĻŦā§āĻ°āĻžāĻāĻāĻžāĻ°ā§ āĻĒāĻžāĻāĻĨāĻ¨ āĻā§āĻĄ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ asm.js-āĻ āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°āĻž āĻāĻāĻāĻŋ CPython āĻāĻ¨ā§āĻāĻžāĻ°āĻĒā§āĻ°ā§āĻāĻžāĻ° āĻ
āĻĢāĻžāĻ° āĻāĻ°ā§ āĻāĻŦāĻ āĻ¸ā§āĻāĻžāĻ˛ā§āĻĒ āĻāĻžāĻāĻžāĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻā§ āĻāĻāĻāĻŋ āĻĻā§āĻāĻžāĻˇā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§)āĨ¤
āĻāĻ¯āĻŧā§āĻŦ āĻĒā§āĻˇā§āĻ āĻžāĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻŽāĻŦā§āĻĄ āĻāĻ°āĻž āĻĒāĻžāĻāĻĨāĻ¨ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻā§ āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ
āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻ¸āĻžāĻŽāĻā§āĻ°āĻŋāĻ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž āĻŦāĻ¨ā§āĻ§ CPython āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž. āĻŦāĻŋāĻ˛āĻŽā§āĻŦ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¸āĻāĻāĻ˛āĻ¨ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻāĻā§, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻĻā§āĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻĒā§āĻ°āĻžāĻ-āĻ¸āĻāĻāĻ˛āĻŋāĻ¤ āĻāĻžāĻāĻžāĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻā§āĻĄ āĻ˛ā§āĻĄ āĻāĻ°āĻžāĻ° āĻā§āĻˇāĻŽāĻ¤āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻž āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ° āĻ˛ā§āĻĄāĻŋāĻ āĻāĻ¤āĻŋ āĻŦāĻžāĻĄāĻŧāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ (Brython āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻā§āĻ˛āĻ¸ āĻĒāĻžāĻāĻĨāĻ¨ āĻŽāĻĄāĻŋāĻāĻ˛ā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻāĻžāĻāĻžāĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§)āĨ¤
āĻāĻŽāĻĻāĻžāĻ¨āĻŋāĻ° āĻ¸āĻŽāĻ¯āĻŧ
āĻāĻŖāĻŋāĻ¤ āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻāĻ°ā§āĻ¨
āĻŦā§āĻ°āĻžāĻāĻāĻžāĻ° āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻ¨āĻĨāĻŋ āĻĨā§āĻā§
āĻŦā§āĻ°āĻžāĻāĻāĻžāĻ°.āĻāĻžāĻāĻŽāĻžāĻ° āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻāĻ°ā§āĻ¨
āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ = āĻ¨āĻĨāĻŋ["āĻ¸āĻžāĻŽāĻā§āĻ°ā§"]
...
āĻā§āĻ¯āĻžāĻ¨āĻāĻžāĻ¸ = content.select_one(â.clockâ)
āĻ¯āĻĻāĻŋ hasattr(āĻā§āĻ¯āĻžāĻ¨āĻāĻžāĻ¸, 'getContext'):
ctx = canvas.getContext("2d")
browser.timer.set_interval(set_clock, 100)
show_hours()
āĻ
āĻ¨ā§āĻ¯:
content.select_one('.navig_zone').html = "āĻā§āĻ¯āĻžāĻ¨āĻāĻžāĻ¸ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ"
āĻāĻ¤ā§āĻ¸: opennet.ru