interactive 相关问题

与非人工接触的非交互式软件相比,交互式软件接受并响应来自人的输入。

如何让 git add -p 接受击键而不等待我按 Enter?

git add -p 对于以交互方式暂存更改非常方便。每次更改时,它都会提示用户按一个键来确定 Git 应如何处理相关更改: 阶段...

回答 1 投票 0

当用户输入错误时循环回到上一个问题的问题

我正在创建一个非常简单的交互式程序,用户可以在其中选择饮料的类型、配菜及其大小。该程序有效,但我想知道是否有一种更聪明的方法可以将所有内容整合在一起

回答 1 投票 0

Unix:除了expect命令还有其他选择吗?

我正在尝试编写 bash 脚本以便自动连接到 ssh 服务器。 但是我没有安装期望包的权限。 所以我想知道是否有一种方法可以自动...

回答 1 投票 0

无需交互的 Bash 脚本

我想做以下事情: 我有一个 bash 脚本,它调用一个交互式命令,要求用户输入密码。我想将脚本中的密码指定为变量,然后将其传递

回答 4 投票 0

破折号图可视化

我正在尝试使用下拉菜单选择数据框的列,将它们放入图中。目前,x 和 y 是静态的,下拉列表可以更新列名称,但我无法更新图表

回答 1 投票 0

当我运行 BIP 报告错误时,仅发生交互式布局

当我运行 BIP 报告时,我仅在交互式视图中收到错误“发生错误”,但当更改为 HTML 或 Excel 时,它运行良好。数据模型运行良好...

回答 2 投票 0

使用 Shiny 应用程序以交互方式设置变量的值以供以后在 R 中使用?

我想使用 Shiny 应用程序以交互方式设置一些变量。我不想在脚本顶部定义一些对象/变量,而是想启动一个应用程序并使用滑块/textInputs/radioBu...

回答 1 投票 0

使用 docker-py 进行交互式 Docker 执行

我正在尝试实现相当于: docker exec -it /bin/bash IE。在容器中运行命令并将我的程序的标准输入和标准输出连接到...的标准输入和标准输出

回答 1 投票 0

Emacs 中可以有交互式绘图吗?

我尝试使用 Emacs 作为我的研究编辑器(我遵循 Jon Fincher 的 Realpython 指南中的所有步骤:[https://realpython.com/emacs-the-best-python-editor/])。 我使用 jupyter 笔记本...

回答 1 投票 0

在 SVG 中包含 JavaScript

我正在尝试通过在 SVG 中嵌入 JavaScript 来使用 JavaScript 创建交互式 SVG 代码。我不知道这是否是正确的方法: 我正在尝试通过将 JavaScript 嵌入到 SVG 中,使用 JavaScript 创建交互式 SVG 代码。我不知道这是否是正确的方法: <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> <svg width="100%" height="100%" version="1.1" xmlns="http://www.w3.org/2000/svg" onkeypress="move()"> <script type="text/javascript"> <![CDATA[ var x; var y; function move() { x = new Number(svg.getElementsByTagName("circle")[0].getAttribute("cx")); y = new Number (svg.getElementsByTagName("circle")[0].getAttribute("cy")); switch (event.keyCode) { case 119: y--; y = y.toString(); svg.getElementsByTagName("circle").setAttribute("cy",y); break; case 115: y++; y = y.toString(); svg.getElementsByTagName("circle").setAttribute("cy",y); break; case 97: x--; x = x.toString(); svg.getElementsByTagName("circle").setAttribute("cx",x); break; case 100: x++; x = x.toString(); svg.getElementsByTagName("circle").setAttribute("cx",x); break; default: } } ]]> </script> <rect x="0" y="0" height="500" width="500" style="stroke-width:1; stroke:black; fill:white"></rect> <circle cx="250" cy="250" r="50" stroke="red" stroke-width="1" fill="red"></circle> </svg> 本来应该有一个随 wasd 一起移动的球,但球却不动。我做错了什么? 这是我编写的工作版本: svg { height: 178px; width: 600px; border: solid 1px; } <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> <svg version="1.1" xmlns="http://www.w3.org/2000/svg"> <circle cx="250" cy="100" r="50" fill="red" /> <script type="text/javascript"><![CDATA[ var KEY = { w:87, a:65, s:83, d:68 }; var moveSpeed = 5; var circle = document.getElementsByTagName("circle")[0]; var x = circle.getAttribute('cx')*1, y = circle.getAttribute('cy')*1; document.documentElement.addEventListener('keydown',function(evt){ switch (evt.keyCode){ case KEY.w: circle.setAttribute('cy',y-=moveSpeed); // Alternatively: // circle.cy.baseVal.value = (y-=moveSpeed); break; case KEY.s: circle.setAttribute('cy',y+=moveSpeed); break; case KEY.a: circle.setAttribute('cx',x-=moveSpeed); break; case KEY.d: circle.setAttribute('cx',x+=moveSpeed); break; } },false); ]]></script> </svg> 一些注意事项: 不要一次又一次地重新获取对圆的引用。让您的代码DRY可以使其更加健壮,减少输入,并且(在这种情况下)执行速度更快。 编辑:如果您无法根据上面的代码弄清楚如何执行此操作,请发布任何不适合您的代码。 不要依赖全局 event 对象;这是老IE的废话。使用传递给事件处理程序的事件对象。 编辑:如果您在代码中引用 event 而没有使用该名称的参数或局部变量,则您假设将存在一个全局 event 对象集。相反,请参阅我为您编写的代码,其中显示事件处理程序传递了一个 event 对象。通过给它一个名称,例如我给它命名为 evt,您将收到一个特定于您的事件处理程序的事件对象。 由于您正在修改 x 和 y 变量,因此无需每次按键时重新获取 cx 和 cy 属性。 编辑:在您的原始代码和您接受的答案中,您已在事件处理程序之外声明 var x,并且在事件处理程序的开头有 x = ...,然后在其中一个事件中声明 x++处理程序。您可以每次重新获取 x 的当前值(就像您所做的那样)然后 setAttribute(...,x+1),或者(就像我所做的那样)您只能在事件处理程序之前获取属性 once 的值,然后假设每次处理按键事件时该值都是正确的。 不要将 JavaScript 事件处理程序放在元素上,而是以编程方式附加它们。 编辑:在您的 SVG 标记中,您有:<svg ... onkeypress="move()">。在 HTML 中将行为与标记混合是一个非常糟糕的主意,在 SVG 中也是一个坏主意。不要使用 onfoo="..." 属性来描述元素上发生事件时应该发生的情况,而是使用 addEventListner() 通过代码附加事件处理程序,而无需编辑 SVG 标记。 在将数字设置为属性之前,无需将数字强制转换为字符串。 如果您希望它在所有浏览器中工作,请使用 keydown 和我上面提供的 ASCII 事件代码,而不是 keypress 和您使用的奇数。 编辑:您在另一篇文章中抱怨说您无法执行此操作,因为您希望在按住按键时重复处理事件处理程序。请注意,您想要的行为是通过我在 Chrome、Safari、Firefox 和 IE 中的示例代码实现的(我没有 Opera 来测试)。换句话说,keydown 按您想要的方式工作,无论您认为它应该如何表现。 编辑 2:如果您想在文档顶部包含一个脚本块,在创建所有元素之前,您可以执行如下操作: <svg ...> <script type="text/javascript"> window.addEventListener('load',function(){ var circle = ...; document.rootElement.addEventListener('keydown',function(evt){ ... },false); },false); </script> ... </svg> 外部函数只会在页面加载后运行,因此您可以确保存在引用它们的元素。 您可以通过在 svg 标签中声明 script 标签来将脚本 js 添加到 svg 代码中: <svg version="1.1" id="loader-1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="40px" height="40px" viewBox="0 0 50 50" style="enable-background:new 0 0 50 50;" xml:space="preserve"> ... <script type="text/javascript"> window.addEventListener('load',function(){ alert('Hi') }) </script> </svg> 这适用于 Chrome。您遇到了一些错误,例如有时仅对 getElementsByTagName 建立索引。另外,最大的问题是 onkeypress 属性没有绑定。 <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> <svg width="100%" height="100%" version="1.1" xmlns="http://www.w3.org/2000/svg" > <script type="text/javascript"> <![CDATA[ var x; var y; function move() { x = new Number(document.getElementsByTagName("circle")[0].getAttribute("cx")); y = new Number (document.getElementsByTagName("circle")[0].getAttribute("cy")); switch (event.keyCode) { case 119: y--; y = y.toString(); document.getElementsByTagName("circle")[0].setAttribute("cy",y); break; case 115: y++; y = y.toString(); document.getElementsByTagName("circle")[0].setAttribute("cy",y); break; case 97: x--; x = x.toString(); document.getElementsByTagName("circle")[0].setAttribute("cx",x); break; case 100: x++; x = x.toString(); document.getElementsByTagName("circle")[0].setAttribute("cx",x); break; default: } } document.documentElement.addEventListener("keypress", move); ]]> </script> <rect x="0" y="0" height="500" width="500" style="stroke-width:1; stroke:black; fill:white"></rect> <circle cx="250" cy="250" r="50" stroke="red" stroke-width="1" fill="red"></circle> </svg> 简单示例 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"> <path d="M90,18c-90-45-115,102,0,69v-21l4-3h-23l-8,4h16v19c-80,15-65-106,2-63l-4,5l4-1z" fill="#CCC" stroke="#DDD" stroke-width="2" stroke-linejoin="round"/> <path d="M87,15c-90-45-115,102,0,69v-21l4-3h-23l-8,4h16v19c-80,15-65-106,2-63l-4,5l4-1z" fill="#00F"/> <script> alert("Hello world"); </script> </svg>

回答 4 投票 0

是否可以在代码中放入一些东西来启动交互式解释器(在Python中)

这个想法是能够正常运行代码,除了当它到达特定方法调用时它将在给定范围内启动交互式解释器。有点像停在断点处...

回答 3 投票 0

如何判断代码是否在 R Markdown (Rmd) 上下文中交互运行?

我的问题与已回答的问题非常相似,但有一个关键的区别。有多种解决方案可以检测代码是否在 R Markdown (Rmd) 环境中以非交互方式运行...

回答 1 投票 0

如何创建一个 gitk 视图,该视图始终显示迄今为止在交互式 rebase 上完成的工作(使用 -i 或 --interactive 选项)

我正在做一个交互式变基(git rebase -i master while on my_branch)。 我使用的 gitk 视图仅显示特定分支(“编辑视图”对话框的“分支和标签”字段设置为

回答 1 投票 0

与 ipywidgets 事件交互和绘图会产生许多图表

我正在尝试使用小部件事件来制作交互式图表。 %matplotlib 内联 将 numpy 导入为 np 将 matplotlib.pyplot 导入为 plt 导入 ipywidgets 作为小部件 def myplot(n): x = np.linspa...

回答 2 投票 0

在多张纸上绘制具有不同排序行的图表

我有一个表格文件,用于跟踪显卡随时间的价格变化。每张表都是某种时间戳,A 列中包含 GPU 型号,E 列中包含其价格,还有一堆其他数据......

回答 1 投票 0

读取 .net 交互式(多语言笔记本)中最后一个代码单元的输出?

我喜欢为最后一个代码单元的输出编写测试。如何获取 C# 笔记本中最后一个代码单元或任何代码单元的输出? .net Interactive 的常见问题解答提到了 Microsoft.D...

回答 1 投票 0

在 folium 地图上添加交互式图表

我想将图表添加到 folium 地图,如下所示: 在此输入图像描述 来源:https://github.com/jupyter-widgets/ipyleaflet 但我找不到任何指导这方面的文档。谁能帮我...

回答 1 投票 0

RShiny showModal(ModalDialog(h3(...))) 中的错误:“警告:writeImpl 中的错误:要写入的文本必须是长度为一的字符向量”

我创建了这个名为mingiPolygons 的包。它标识由 ggplot 包形成的地图可视化中的多边形对象。我已经使它与 sf 包中的数据兼容。创建 dashb 时...

回答 1 投票 0

在数据框中添加复选框

我想在streamlit的数据框中添加一列,并且该列是一个复选框,以便稍后我可以列出标记了复选框的行,这可能吗?

回答 2 投票 0

如何在Python中进行交互式压缩,跟踪目录中每个文件的完成情况?

我正在编写一个Python脚本,将目录中的多个文件夹压缩到新目录中的单个文件中,如本文中所述:将多个文件夹(目录内)压缩到单个...

回答 1 投票 0

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