我第一次尝试 url 持久性,在页面加载后,我有了想要从 URL 中单击的元素。当我加载页面时,.click() 没有注册,但如果我在控制台中键入它,它会正确执行。我曾尝试将代码(特别是(function persistence(formvals){...})();
)放在 (document).ready(function(){...}) 部分,但这不起作用。如何让 .click() 在页面加载后注册,并在每个应该点击的元素上注册?
网址:http ://specialorange.org/resume/index.html?gc_abstract_heading&gc_ba_analysis
这些部分的两个 id 是 :
gc_abstract_heading
和
gc_ba_analysis
,因此$(gc_abstract_heading).click()
在控制台中有效,而不是在代码中。
代码:
var formvals = {};
var keyval = location.search.replace('?', '').split('&');
$.each(keyval, function () {
var splitval = this.split('=');
formvals[splitval[0]] = splitval[1];
});
console.log(keyval);
console.log(formvals);
(function persistence(formvals) {
for ( i=0 ; i < keyval.length ; i++ ) {
console.log(keyval[i]);
$(keyval[i]).click();
};
})();
请注意,此代码不在实时页面上,它在我的本地站点上进行测试。实时页面上的持久性部分是不同的。