我有一个应用程序可以保存一个点击jQuery选择器供以后使用,当我尝试回忆选择器时,我遇到了一个有趣的问题。以下是我的代码供参考。这是一个AJAX调用的回调函数,它返回data
中保存的JSON对象。我已经验证数据正在正确传输,但似乎尝试使用字符串作为jQuery中的选择器再次无法正常工作。 String()
内容仅供测试,我不确定是否有必要。
如果有人对为什么这可能不起作用有任何指导,我很想知道。任何jQuery(selector)
的代码都无效。
jQuery.each(data.dot_collection, function() {
x_coord = this.x_coord;
y_coord = this.y_coord;
selector = new String(this.selector);
//Works
alert( selector ); // = html > body.home.blog.logged-in.single-author.two-column.right-sidebar > div.hfeed > header#branding > hgroup > h1#site-title
//Works
alert(jQuery("html > body.home.blog.logged-in.single-author.two-column.right-sidebar > div.hfeed > header#branding > hgroup > h1#site-title").offset().left);
// Not Working & jQuery(selector).offset() = 'undefined'
alert( jQuery(selector).offset().left );
答案 0 :(得分:0)
jQuery('p').each(function() {
console.log(this.offsetLeft);
});
通过使用它,我可以为每个p(在你的情况下是集合)留下偏移量。
答案 1 :(得分:0)
我认为问题在于您传递的是String
对象而不是原始字符串,而jQuery无法检测到这一点。
尝试:
var selector = this.selector;