gpt4 book ai didi

javascript - 如何在仅调用函数时更改动态添加元素的属性

转载 作者:行者123 更新时间:2023-11-30 00:24:44 25 4
gpt4 key购买 nike

如何在仅调用函数时更改动态添加元素的属性,而不是通过将事件绑定(bind)到它来更改属性。

我的代码的作用:我正在尝试通过 jquery 在浏览器后退按钮上加载所有以前的内容。我需要使用新的 href 属性更新所有 loadmore 按钮(动态创建),具体取决于浏览器中存在的 url 和侧边栏表单上的选中选项。

问题:问题是我无法更新动态添加元素的 href 属性。

我尝试过的

botSpace 是一个固定的类,动态添加的元素有 sidebar_loadMore 类。

动态添加的元素

<a id="loadMore" class="sidebar_loadMore" onclick="more_leftajaxsearchcategory(0,0,this);" href="#apiscroll=1">View More</a>

我正在尝试将 href 更新为 url 作为值。

jQuery('.botSpace').find('.sidebar_loadMore').attr('href', scroll);

.

jQuery("body").on("ready",'.sidebar_loadMore',function(){   
jQuery(this).attr('href', scroll);
})

我还尝试绑定(bind) mouseenter 事件。这可行,但在其他一些情况下会导致问题。并尝试绑定(bind)一些自定义事件但未能实现。

Live URL:您可以在此处查看代码 Bestofthebrunch

最佳答案

我添加了一个条件来检查浏览器的后退按钮是否被按下,只需调用函数 leftajaxsearchcategory(value1, value2, back=true)。这是在 DOM 中添加加载更多元素的函数。在被调用的函数端检查一个条件,如果 url 有一个哈希值并且返回为真,那么我根据我的需要更新 href 就像这样......

if(window.location.hash && back){
var scroll = getScroll();
var scrollURL = getScrollURL(scroll);
var url = '<a id="loadMore" class="sidebar_loadMore" onclick="more_leftajaxsearchcategory(0,0,this);" href="'+scrollURL+'">View More</a>';
}
else if(!back){
var url = '<a id="loadMore" class="sidebar_loadMore" onclick="more_leftajaxsearchcategory(0,0,this);" href="#apiscroll=1">View More</a>';
}

问题终于解决了。感谢所有人向我建议解决我的问题的可能方法。

关于javascript - 如何在仅调用函数时更改动态添加元素的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31852473/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com