jQuery 升级后,未捕获异常:语法错误,无法识别的表达式:h3

发布于 2024-09-18 07:28:21 字数 684 浏览 3 评论 0原文

我正在开发该网站的新版本,现在发现我的 javascript 代码存在一个问题,该问题没有得到很好的处理。

我过去一直在做的是

$('#lb_outer_title :h3').html(title); 

更改灯箱标题属性的文本。这在 jQuery 1.3.2 中工作得很好,但是在新版本(使用 jQuery 1.4.2)上,我收到错误:

uncaught exception: Syntax error, unrecognized expression: Syntax error, unrecognized expression: h3

在新版本中,我可以将代码更改为以下内容并且它可以工作,但这不能是最佳解决方案:

$('#lb_outer_title').html('<h3>'+ title + '</h3>');

我已经在新版本中尝试使用 :first 选择器,但这也无法按预期工作。

这是我正在使用的 html(注意:我无法将 class 或 id 添加到 h3 标记):

 <div id="lb_outer_title">
   <h3>Title</h3>
  </div>

I'm working on a new version of the website, and am now finding an issue with my javascript code that isn't being handled nicely.

What I have been doing in the past is

$('#lb_outer_title :h3').html(title); 

which changed the text of the title attribute for my lightbox. This worked fine in jQuery 1.3.2, but on the new version (which is using jQuery 1.4.2) I get the error:

uncaught exception: Syntax error, unrecognized expression: Syntax error, unrecognized expression: h3

In the new version I can change the code to the following and it works, but this can't be the optimal solution:

$('#lb_outer_title').html('<h3>'+ title + '</h3>');

I've tried the using :first selector in my new version, but that doesn't work as desired either.

Here is the html that I'm working with (note: I can't add class or id to the h3 tag):

 <div id="lb_outer_title">
   <h3>Title</h3>
  </div>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

总攻大人 2024-09-25 07:28:21

你的错误在这里:

$('#lb_outer_title :h3').html(title); 

h3 之前的冒号应该被删除。 jQuery 1.4 有一个更严格的选择器引擎,这就是它报告错误的原因(因为您在元素选择器上使用伪类前缀),而 jQuery 1.3 只是默默地解析掉冒号。

Your mistake is here:

$('#lb_outer_title :h3').html(title); 

That colon before the h3 should be dropped. jQuery 1.4 has a stricter selector engine and that's why it's reporting your error (since you're using a pseudo-class prefix on an element selector), while jQuery 1.3 merely silently parses the colon away.

失去的东西太少 2024-09-25 07:28:21
$('#lb_outer_title h3').html(title); 

不确定那个冒号在那里做什么...它不是一个有效的选择器。 : 用于伪类,但您只需要一个元素。

$('#lb_outer_title h3').html(title); 

Not sure what that colon was doing in there... It is not a valid selector. : is used for psuedo-classes, but you simply want an element.

街角迷惘 2024-09-25 07:28:21

只需删除 : 即可,如下所示:

$('#lb_outer_title h3').html(title); 

冒号前缀 : 用于各种 伪选择器,您只需要 h3,即 元素选择器.

Just remove the : like this:

$('#lb_outer_title h3').html(title); 

The colon prefix, :, is used for various pseudo selectors, you just want h3, the element selector.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文