小编spy*_*g63的帖子

如何按类名获取子元素?

我正在尝试获得具有class = 4的子span.这是一个示例元素:

<div id="test">
 <span class="one"></span>
 <span class="two"></span>
 <span class="three"></span>
 <span class="four"></span>
</div>
Run Code Online (Sandbox Code Playgroud)

我可用的工具是JS和YUI2.我可以这样做:

doc = document.getElementById('test');
notes = doc.getElementsByClassName('four');

//or

doc = YAHOO.util.Dom.get('#test');
notes = doc.getElementsByClassName('four');
Run Code Online (Sandbox Code Playgroud)

这些在IE中不起作用.我得到一个错误,对象(doc)不支持此方法或属性(getElementsByClassName).我已经尝试了一些getElementsByClassName的跨浏览器实现的例子,但是我无法使它们工作并且仍然有错误.

我认为我需要的是一个跨浏览器getElementsByClassName或者我需要使用doc.getElementsByTagName('span')并循环直到我找到第4类.我不知道如何做到这一点.

javascript yui

105
推荐指数
9
解决办法
26万
查看次数

滚动到iframe更改的父框架顶部?

当用户在iframe中浏览时,是否可以将(0,0)滚动到父页面的顶部?例如,我们有一个iframe,它是包含搜索结果的页面的整个高度.单击iframe中的下一页按钮时,焦点将保留在页面底部.

我甚至不确定是否可以检测到这一点.iframe src值实际上并没有改变.

PS我不知道为什么这个网站必须使用iframe,但IE6是标准浏览器所以我没有提问.

javascript iframe dom

12
推荐指数
2
解决办法
4万
查看次数

XPath 节点到字符串

如何选择以下节点的字符串内容:

<span class="url">
 word
 <b class=" ">test</b>
</span>

<span class="url">
 word
 <b class=" ">test2</b>
 more words
</span>
Run Code Online (Sandbox Code Playgroud)

我尝试过一些事情

//span/text()
Run Code Online (Sandbox Code Playgroud)

没有获得粗体标签

//span/string(.)
Run Code Online (Sandbox Code Playgroud)

是无效的

string(//span)
Run Code Online (Sandbox Code Playgroud)

只选择1个节点

我在 php 中使用 simple_xml ,我认为唯一的其他选择是使用 //span ,它返回:

Array
(
    [0] => SimpleXMLElement Object
        (
            [@attributes] => Array
                (
                    [class] => url
                )

            [b] => test
        )

    [1] => SimpleXMLElement Object
        (
            [@attributes] => Array
                (
                    [class] => url
                )

            [b] => test2
        )

)
Run Code Online (Sandbox Code Playgroud)

*请注意,它还会从第二个跨度中删除“更多单词”文本。

所以我想我可以如何使用 php 来压平数组中的项目?Xpath 是首选,但任何其他想法也会有所帮助。

php xml xslt xpath simplexml

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

如何使用'find'返回父目录

我使用find来查找文件,但我想只返回文件父目录的路径.

find /home/ -name 'myfile' -type f
Run Code Online (Sandbox Code Playgroud)

这将返回所有文件匹配的完整路径列表,但我想

bash

4
推荐指数
2
解决办法
4241
查看次数

按字母顺序排序并按组显示

我正在尝试按字母顺序和块中显​​示数据库中的标题列表.

我想输出这封信,然后包括以该字母开头的所有标题.例如:

  • 一个
    • 苹果
    • 另一件事
    • 短发

我知道我可以使用.order('title')订购我的结果,但我不确定编写显示代码的最佳方法是什么?

ruby ruby-on-rails ruby-on-rails-3

4
推荐指数
1
解决办法
3511
查看次数

为什么我无法使用 Slack Bolt 库读取聊天消息?

我创建了一个松弛的应用程序。我能够读取并响应斜杠命令。但是,应用程序无法读取消息。当我发出斜杠命令时,我会看到如下 Web 服务器事件:

127.0.0.1 - - [19/Jan/2021 13:11:07] "POST /slack/events HTTP/1.1" 200 -
Run Code Online (Sandbox Code Playgroud)

但是,当在聊天中输入短信时,我的网络服务器上没有日志。我相信 slack 消息应该触发一个事件,将数据发送到我的 API。注意:我正在使用事件 API。

我使用Bolt 来松弛

我假设此权限位于订阅机器人事件下的事件订阅设置中。在这种情况下,我只启用了app_home_opened.

有一个选项channels:readchannels:history。它们都是粗体且无法添加。我认为这意味着它们默认启用。

这是一个简化的应用程序,它响应/list但不响应hello

import os
from slack_bolt import App

# Initializes the app
app = App(
    token=os.environ.get("SLACK_BOT_TOKEN"),
    signing_secret=os.environ.get("SLACK_SIGNING_SECRET")
)

# Respond to hello
@app.message("hello")
def say_hello(message, say):
    say("hi")

# List all users
@app.command("/list")
def list_users(ack, say, command):    
    ack()
    say("list users")

# Start your app
if __name__ == "__main__": …
Run Code Online (Sandbox Code Playgroud)

python python-3.x slack-api

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

评估DOMXpath-> query的结果是否返回匹配

如何评估DOMTXpath-> query是否实际返回数据.现在我正在做($ xml是一个DOMXpath对象):

foreach($xml->query($xpath) as $node)
{
  echo $node->textContent;
}
Run Code Online (Sandbox Code Playgroud)

但如果我的$ xpath不会导致节点,它就不会输出任何数据.我尝试过类似的东西:

if ($xml->query($xpath))
{
echo "found";
}else{
echo "not found";
}
Run Code Online (Sandbox Code Playgroud)

但这似乎不起作用.如何测试我的查询是否实际返回匹配的节点(在这种情况下实际上是一个属性)?

php nodelist domxpath

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

如何将XML元素组转换为JSON列表?

是否可以应用仅与唯一属性匹配的模板?

<node name="region">1</node>
<node name="region">2</node>
<node name="region">3</node>
<node name="place">a</node>
<node name="place">b</node>
<node name="title">test</node>
Run Code Online (Sandbox Code Playgroud)

我想一次执行一个模板,@name="region"并一次@name="place".可以使用XSLT/XPath 1.0完成吗?

我的最终目标是JSON输出,如下所示:

"container":{
"region":["1","2","3"],
"place":["a","b"],
"title":"test"
}
Run Code Online (Sandbox Code Playgroud)

xml xslt xpath json xslt-1.0

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