开发者

tiny question about jquery's live()

How would I change the html of a tag like so:

$('#someId').html('<p>foo bar</p>');

while using the live() or delegate() function? Just for clarification I don't want this to ha开发者_如何学Goppen on hover or focus or click... I just want jquery to immediately change the html inside of a certain tag.

Basically, I'm trying to change the logo in the Mojomotor's little dropdown panel and I don't want to change the logo every time I upgrade to a new version.

Any suggestions?


.live() and .delegate() don't work like this, what you're after is still done through the .livequery() plugin or simply in the document.ready if it's present on page load, like this:

$(function() {
  $('#someId').html('<p>foo bar</p>');
});

Or with .livequery() if it's replaced dynamically in the page:

$('#someId').livequery(function() {
  $(this).html('<p>foo bar</p>');
});

.live() and .delegate() work off of event bubbling...an element just appearing doesn't do this whereas a click or change, etc would.


Just do it when the DOM loads.

<script type="text/javascript">
    $(document).ready(function() {
        $('#someId').html('<p>foo bar</p>'); 
    });
</script>
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜