1

我可以在 jquery 中使用这样的 $(this+"#id").html(...); 方法还是有其他方法。
我有这样的情况可以这样使用。我的代码如下

html代码

<div id="box1">
<div ></div>
</div>    

CSS代码是

#box1  {  
width:300px;
height:200px;
border:1px solid #333;
}  
#box1 div
{
width:200px;
height:150px;
border:1px solid #999;
margin:auto;
margin-top:10px;

}

jQuery代码是

$(document).ready(function()
              {
                  $("#box1").mouseenter(function()
         {

         $(this+"div").html("<p>Mouse entered</p>");

        });    });

在jsfiddle中查看我的代码

4

4 回答 4

4
$(document).ready(function() {
    $("#box1").mouseenter(function() {
         // $(this) references the #box1 element, and turns it into a jquery object
         // .find searches inside this DOM node for the new selector
         $(this).find("div").html("<p>Mouse entered</p>");
    });    
});

.find 方法- 在 DOM 元素中搜索新的选择器。将匹配项作为 jQuery 对象返回。

我重新格式化了您的代码以使用我们在工作中使用的约定。请注意,打开的卷曲位于同一行,然后匹配的收盘价会与其开盘价位相匹配。那里有很多“最佳实践”,所以试着找到一个并坚持下去。它将使阅读、理解和调试代码变得更加容易。

于 2013-06-23T18:11:09.943 回答
3

您可以像这样在查询中添加上下文:

$('selector', context)

所以供你使用:

$('div', this)

你也可以像这样使用find 方法

$(this).find('div');
于 2013-06-23T18:14:03.253 回答
1

试试这个:

$(document).ready(function()
{
    $("#box1").mouseenter(function()
    {
      $("div", this).html("<p>Mouse entered</p>");
    });    
});

这是jsFiddle

于 2013-06-23T18:10:38.677 回答
1

尝试使用

 $(this).find("div").html("<p>Mouse entered</p>");
于 2013-06-23T18:11:16.237 回答