小编Bra*_*000的帖子

PowerShell在双引号内插值时输出数组项

我在PowerShell周围的数组和双引号中发现了一些奇怪的行为.如果我在数组中创建并打印第一个元素,例如:

$test = @('testing')
echo $test[0]

Output:
testing
Run Code Online (Sandbox Code Playgroud)

一切正常.但如果我在它周围加上双引号:

echo "$test[0]"

Output:
testing[0]
Run Code Online (Sandbox Code Playgroud)

仅评估了$ test变量,并且数组标记[0]被字面上视为字符串.简单的解决方法是避免在双引号中插入数组变量,或者首先将它们分配给另一个变量.但是这种行为是设计的吗?

powershell string-interpolation

13
推荐指数
3
解决办法
1万
查看次数

iOS通过Javascript触摸设备的视口x/y坐标

我目前正在为iPhone开发一个网页,其中包含一个用户可以触摸和拖动的DIV元素.此外,当用户将元素拖动到设备屏幕的顶部或底部时,我想自动向上或向下滚动页面.

我遇到的问题是尝试确定一个可靠的公式来获取onTouchMove事件中的坐标,该坐标与用户的手指到达设备视口的顶部或底部进行协调.我目前的公式似乎很乏味,我觉得可能有更简单的方法来做到这一点.

我当前用于确定触摸事件是否已到达屏幕底部的公式:

function onTouchMoveHandler(e)
{
    var orientation=parent.window.orientation;
    var landscape=(orientation==0 || orientation==180)?true:false;
    var touchoffsety=(!landscape?screen.height - (screen.height - screen.availHeight):screen.width - (screen.width - screen.availWidth)) - e.touches[0].screenY + (window.pageYOffset * .8);
    if(touchoffsety < 40) alert('finger is heading off the bottom of the screen');
}
Run Code Online (Sandbox Code Playgroud)

我已经对窗口,文档,正文,e.touches等对象进行了一些Javascript反射,看看我是否能找到一组数字总是加起来等于屏幕的顶部或底部,但没有可靠的成功.对此的帮助将不胜感激.

javascript iphone viewport touch ios

6
推荐指数
1
解决办法
972
查看次数

输入类型“数字”在 Microsoft Edge 中未按预期工作

我有一个input字段如下

<input class="calc-parameter" type="number" placeholder="" 
data-parameter-name="NUMERIC" maxlength="12" id="NUMERIC-2-0">
Run Code Online (Sandbox Code Playgroud)

在所有浏览器上,我都在使用微调器和/或键盘只允许输入数字

在 Microsoft Edge 上,用户可以在字段中输入数字或字符。我是否需要为 Edge 添加另一个属性以将其视为仅数字字段?或者这是一个已知的边缘错误?我在 Microsoft 论坛上找不到任何内容

html browser microsoft-edge

6
推荐指数
1
解决办法
5409
查看次数

如何在同一个查询中同时使用 sp_msforeachtable 和 sp_msforeachdb?

有什么方法可以引用在“sp_msforeachdb”循环内运行的“sp_MSforeachtable”循环内的表?

例如,在以下查询中,'?' 总是引用数据库:

DECLARE @cmd VARCHAR(8000);

SET @cmd = 'USE ?; EXEC sp_MSforeachtable @command1="select db_name = DB_NAME(), db_foreach = ''?'', tb_foreach = ''?'' "'

EXEC sp_msforeachdb @command1 =@cmd
Run Code Online (Sandbox Code Playgroud)

导致:

 db_name        db_forearch    tb_foreach
 ServerMonitor  master         master
Run Code Online (Sandbox Code Playgroud)

我想要一些类似的东西:

 db_name        db_forearch    tb_foreach
 ServerMonitor  master         <TABLE_NAME>
Run Code Online (Sandbox Code Playgroud)

我应该改变什么?


解决了。按照肖恩的建议,我使用了我的 ow 光标。但是 Ben Thul 建议的 @replacechar 解决方案正是我正在寻找的。

DECLARE @cmd VARCHAR(8000);

SET @cmd = 'USE ^; EXEC sp_MSforeachtable @command1="select db_name = DB_NAME(), db_foreach = ''^'', tb_foreach = ''?'' "'

EXEC sp_msforeachdb @command1 =@cmd, @replacechar = '^'
Run Code Online (Sandbox Code Playgroud)

sql-server sp-msforeachdb sql-server-2008 sp-msforeachtable

5
推荐指数
1
解决办法
3846
查看次数