标签: siblings

CSS中下一个元素的选择器的语法是什么?

如果我有标头标签 <h1 class="hc-reform">title</h1>

h1.hc-reform{
    float:left;
    font-size:30px;
    color:#0e73bb;
    font-weight:bold;
    margin:10px 0px;
}
Run Code Online (Sandbox Code Playgroud)

然后我有一个段落<p>stuff here</p>.

如何确保使用CSS后面的每个<p>标记h1.hc-reform使用:clear:both;

那会是:

h1.hc-reform > p{
     clear:both;
}
Run Code Online (Sandbox Code Playgroud)

由于某种原因,这是行不通的.

html css css-selectors siblings

192
推荐指数
4
解决办法
23万
查看次数

兄弟姐妹包进口

我已经尝试阅读有关兄弟进口甚至 包文档的问题,但我还没有找到答案.

具有以下结构:

??? LICENSE.md
??? README.md
??? api
?   ??? __init__.py
?   ??? api.py
?   ??? api_key.py
??? examples
?   ??? __init__.py
?   ??? example_one.py
?   ??? example_two.py
??? tests
?   ??? __init__.py
?   ??? test_one.py
Run Code Online (Sandbox Code Playgroud)

如何在脚本 examplestests目录从导入 api模块,并可以从命令行运行?

此外,我想避免sys.path.insert每个文件的丑陋黑客.当然这可以在Python中完成,对吧?

python packages siblings python-import

149
推荐指数
7
解决办法
7万
查看次数

jQuery:如何找到父母的特定孩子?

举一个简单的例子,我在页面上多次重复了以下块(它是动态生成的):

<div class="box">
   <div class="something1"></div>
   <div class="something2">
      <a class="mylink">My link</a>
   </div>
</div>
Run Code Online (Sandbox Code Playgroud)

点击后,我可以通过以下方式访问链接的父级:

$(".mylink").click(function() {
   $(this).parents(".box").fadeOut("fast");
});
Run Code Online (Sandbox Code Playgroud)

但是......我需要找到<div class="something1">那个特定的父母.

基本上,有人可以告诉我如何引用更高级别的兄弟而不能直接引用它吗?我们称之为大哥哥.直接引用大哥的类名会导致页面上该元素的每个实例淡出 - 这不是理想的效果.

我试过了:

parents(".box .something1") ... no luck.
parents(".box > .something1") ... no luck.
siblings() ... no luck.
Run Code Online (Sandbox Code Playgroud)

任何人?谢谢.

jquery parent siblings jquery-selectors

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

有没有办法选择兄弟节点?

出于某些性能原因,我试图找到一种方法来仅选择所选节点的兄弟节点.例如,

 <div id="outer">
      <div id="inner1"> </div>
      <div id="inner2"> </div>
      <div id="inner3"> </div>
      <div id="inner4"> </div>
 </div>
Run Code Online (Sandbox Code Playgroud)

如果我选择了inner1节点,有没有办法让我访问它的兄弟inner2-4节点?

javascript dom siblings

86
推荐指数
7
解决办法
14万
查看次数

XPath ::获取以下兄弟姐妹

我有以下HTML结构:我正在尝试构建一个强大的方法来提取第二个颜色摘要元素,因为DOM中会有很多这样的标记.

<table>
  <tbody>
    <tr bgcolor="#AAAAAA">
    <tr>
    <tr>
    <tr>
    <tr>
      <td>Color Digest </td>
      <td>AgArAQICGQMVBBwTIRQHIwg0GUMURAZTBWQJcwV0AoEDAQ </td>
    </tr>
    <tr>
      <td>Color Digest </td>
      <td>2,43,2,25,21,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, </td>
    </tr>
  </tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

我试图提取具有解码值的第二个"颜色摘要"td元素.

我写了下面的xpath,但没有得到第二个我没有得到第二个td元素.

//td[text() = ' Color Digest ']/following-sibling::td[2]
Run Code Online (Sandbox Code Playgroud)

当我把它改为td [2]到td [1]时,我得到了两个元素.

html xpath siblings scraper

68
推荐指数
2
解决办法
19万
查看次数

如何使用CSS显示和隐藏div?

在我的脚本中有三个div.class="ab"当我将鼠标悬停在第一行并显示div时class="abc",我想显示div ,当悬停在第二行时.否则我想class="a"默认显示div .

但它永远不会显示div class="a".

.abc,.ab {
    display: none;
}
#f:hover ~ .ab {
    display: block;

}
#f:hover ~ .abc,.a {
    display: none;

}
#s:hover ~ .abc {
    display: block;

}
#s:hover ~ .ab,.a {
    display: none;
}
Run Code Online (Sandbox Code Playgroud)
<a id="f">Show First content!</a>
<br/>
<a id="s">Show Second content!!</a>
<div class="a">Default Content</div>
<div class="ab">First content</div>
<div class="abc">Second content</div>
Run Code Online (Sandbox Code Playgroud)

这是我的问题JSFiddle:JSFiddle Link

html css hover siblings css3

43
推荐指数
3
解决办法
25万
查看次数

如何用jQuery只选择一个兄弟?

我有这个代码:

<ul>
  <li class="foo">foo text</li>
  <li class="foo2">foo2 text</li>
  <!-- more li here -->
  <li class="bar">bar text</li>
  <li class="bar2">bar2 text</li>
  <!-- more li here -->
  <li class="baz">clickme!</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

$(".baz").click(function() {
    alert("test: " + $(this).siblings(".bar")[0].text()); // Doesn't work
});
Run Code Online (Sandbox Code Playgroud)

siblings(".bar")[0]不起作用.(没有弹出警告框,也没有javascript错误)

选择一个兄弟姐妹的正确方法是什么?

jsFiddle尝试

编辑:我不想使用prev()next().

jquery siblings

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

如何在React中轻松设置兄弟组件的状态?

我有一个可点击列表组件的开头,它将用于驱动一个select元素.正如你可以从下面看,onClickListItem,我路过一个子元素的状态(ListItem在这种情况下)父母(SelectableListCustomSelect组件).这工作正常.但是,我还想做的是更改兄弟组件(其他ListItems)的状态,以便在单击其中一个ListItem时切换其选定状态.

目前,我只是使用document.querySelectorAll('ul.cs-select li)抓取元素并将类更改为与所单击的索引不匹配时选择的ListItem.这在某种程度上有效.但是,在几次单击之后,组件的状态尚未由React更新(仅由客户端JS),并且事情开始崩溃.我想要做的是更改this.state.isSelected兄弟列表项,并使用此状态刷新SelectableList组件.任何人都可以提供一个比我下面写的更好的替代品吗?

var React = require('react');
var SelectBox = require('./select-box');

var ListItem = React.createClass({
    getInitialState: function() {
        return {
            isSelected: false
        };
    },

    toggleSelected: function () {
        if (this.state.isSelected == true) {
            this.setState({
                isSelected: false
            })
        } else {
            this.setState({
                isSelected: true
            })
        }
    },

    handleClick: function(listItem) {
        this.toggleSelected();
        this.props.onListItemChange(listItem.props.value);

        var unboundForEach = Array.prototype.forEach,
            forEach = Function.prototype.call.bind(unboundForEach);

        forEach(document.querySelectorAll('ul.cs-select li'), function (el) …
Run Code Online (Sandbox Code Playgroud)

siblings reactjs

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

在JS中插入兄弟节点

所以我有一个带有一些预标签的div,如下所示:

<div id="editor" >
    <pre contentEditable="true">1</pre>
    <pre contentEditable="true">2</pre>
    <pre contentEditable="true">3</pre>
</div>
Run Code Online (Sandbox Code Playgroud)

现在我想使用Javascript将新pre节点放在1和2之间.我一直在尝试这样做(因为我理解DOM是一个双重链接的树),但我感觉可能是指针因为我正在接近它,所以不可编辑.

(只是事件处理程序中的一个片段,e是事件)

var tag = e.srcElement;
    if(tag.nextSibling){
        var next = tag.nextSibling;
        var newPre = document.createElement('pre');
        newPre.setAttribute("contentEditable", "true");
        newPre.innerHTML = "boom";
        tag.nextSibling = newPre;
        newPre.nextSibling = next;
    }
Run Code Online (Sandbox Code Playgroud)

最后两行来自我的c ++经验,但在JS中感觉很吵.我该如何设置一个新的兄弟节点?

html javascript dom siblings

24
推荐指数
2
解决办法
3万
查看次数

选择第一个兄弟姐妹

我试图在我无法改变html标记的环境中选择第一个兄弟的内部值 - 使用jQuery.

我有以下内容:

<tr>
    <td>3</td>
    <td>bob</td>
    <td>smith</td>
    <td>bob@example.com</td>
    <td>
        <img src="bobsmith.png" onclick="doSomething()" />
    </td>
</tr>
Run Code Online (Sandbox Code Playgroud)

我试图通过以下方式获得第一个的值<td>:

function doSomething() {
    var temp = $(this).parent().parent().children().filter(':first');
    alert("you clicked person #" + temp.html());
}
Run Code Online (Sandbox Code Playgroud)

我从中得到的只是null.

我也尝试了与.siblings()功能的各种组合,但无济于事.

有任何想法吗?

谢谢,

注意:我忘了提到摘录的表是从ajax调用动态加载和刷新的.这可能与包含绑定的建议相关.

解决方案: 我已经接受了以下解决方案,受到接受的答案的启发:

<tr>
    <td>3</td>
    <td>bob</td>
    <td>smith</td>
    <td>bob@example.com</td>
    <td>
        <img src="bobsmith.png" onclick="doSomething(this)" />
    </td>
</tr>
Run Code Online (Sandbox Code Playgroud)

并为jQuery javascript:

function startStopNode(el) {
    var temp = $(el).parent().siblings(':first').html();
    alert("you clicked: " + temp);
}
Run Code Online (Sandbox Code Playgroud)

html jquery dom siblings jquery-1.3.2

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