javascript - jQuery 无法通过 ID 找到

标签 javascript jquery getelementbyid

我认为 Google Chrome 控制台日志最能解释我的问题:

>> $(".single.portfolio")
[<article id=​"#js-single-item" class=​"post-883 portfolio type-portfolio status-publish hentry single">​…​</article>​]

>> the_element_id = $(".single.portfolio").attr("id")
"#js-single-item"

>> $(the_element_id)
[]

>> $("#js-single-item");
[]

>> document.getElementById("#js-single-item");
<article id=​"#js-single-item" class=​"post-883 portfolio type-portfolio status-publish hentry single">​…​</article>​

奇怪的是 getElementById 可以工作,但 jQuery 不行。

我尝试通过复制整个 HTML 来重现问题,代码按预期工作,所以没有问题。最有可能的是某些东西发生了冲突。

我正在寻找调试技巧。谢谢!

编辑:拼写错误。问题已解决。

最佳答案

id=​"#js-single-item"

id 属性不应包含 # 符号。当您在 jQuery 中选择 $('#some-id') 时,它实际上是在调用 document.getElementById('some-id')

你可以这样做:

$('#\\#js-single-item')

另外,不要。

关于javascript - jQuery 无法通过 ID 找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17058048/

相关文章:

jQuery 淡入淡出 div 在设定的时间间隔内

Javascript:GetElementById - DOM何时命中?

javascript - 更改代码隐藏中的 HiddenField 值,无需更改 Javascript 函数即可使用 showModalDialog

javascript - 有没有办法在滚动事件之前采取行动?

javascript - 使用 momentJs 根据 Locale 获取一周的第一天

javascript - Jquery 可拖动的内向外包含

javascript - jQuery 等待动态图片加载

javascript - 如何在 javascript 中多次获取更改 innerHTML 的链接

javascript - IE6 无法使用 getElementById() 找到 Object 元素?

php - 使用 php 更新 json