Jquery Dynamic property

Jquery Dynamic property

本文关键字:property Dynamic Jquery      更新时间:2023-09-26

我有这个代码:

$('.myClass')[0].src += "somethinghere";

我的课上也有多个Div。

如何使[0]与所选Div相关?

例如:

$('.myClass')[this].src += "somethinghere";

这是js:

$(document).ready(function() {
        $(document).on("mouseover",".myClass",function(){
        //code here
        });      
});

HTML是:

<div>
   <a class="myLinkClass" href="" target="_blank">Hover Here</a>
   <div class="box">
   <iframe class="myIframeClass" width="260" height="150" src="" frameborder="0"></iframe>
  </div>
</div>
<div>
   <a class="myLinkClass" href="" target="_blank">Hover Here</a>
   <div class="box">
   <iframe class="myIframeClass" width="260" height="150" src="" frameborder="0"></iframe>
  </div>
</div>
<div>
   <a class="myLinkClass" href="" target="_blank">Hover Here</a>
   <div class="box">
   <iframe class="myIframeClass" width="260" height="150" src="" frameborder="0"></iframe>
  </div>
</div>

似乎每次都有效的是:

$('.myIframeClass')[0].src += "something"; 

但它只适用于第一个iframe,而不适用于其他

您可以直接使用this
update:在更新的答案(使用真正的html)之后,您需要使用closest方法找到容器div,然后使用.find来定位实际的iframe

$(document).ready(function() {
  $(document).on("mouseover", ".myLinkClass", function() {
    var iframe = $(this).closest('div').find('iframe').get(0);
    iframe.src += 'something%20';
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div>
  <a class="myLinkClass" href="" target="_blank">Hover Here</a>
  <div class="box">
    <iframe class="myIframeClass" width="260" height="150" src="http://urlecho.appspot.com/echo?body=frame-1" frameborder="0"></iframe>
  </div>
</div>
<div>
  <a class="myLinkClass" href="" target="_blank">Hover Here</a>
  <div class="box">
    <iframe class="myIframeClass" width="260" height="150" src="http://urlecho.appspot.com/echo?body=frame-2" frameborder="0"></iframe>
  </div>
</div>
<div>
  <a class="myLinkClass" href="" target="_blank">Hover Here</a>
  <div class="box">
    <iframe class="myIframeClass" width="260" height="150" src="http://urlecho.appspot.com/echo?body=frame-3" frameborder="0"></iframe>
  </div>
</div>


请记住,div元素没有src属性。

如果它们确实是div元素,则可能需要使用.attr方法。

$(document).ready(function() {
        $(document).on("mouseover",".myClass",function() {
           var element = $(this),
               currentSrc = $(this).attr('src');
           element.attr('src', currentSrc + 'something');
        });      
});