JQuery Cycle 插件无法验证(pagerAnchorBuilder)

发布于 2024-10-19 15:02:44 字数 1171 浏览 4 评论 0原文

我正在使用很棒的 jQuery Cycle 插件,以及 pagerAnchorBuilder 来构建一些寻呼机项目,以便用户能够在图像之间切换。

这是我的代码。

    jQuery(function() {
        jQuery('#slider<?php the_ID(); ?>').cycle({
            fx:     'fade',//scrollDown
            pager:  '#bullets<?php the_ID(); ?>', 
            pagerAnchorBuilder: function(idx, slide) { 
                return '<a href="#">&</a>'; 
            }
        });
    });

一切都工作得很好,除了 return 部分给我带来了一些 W3C 的问题验证器..

第 92 行,第 31 列:文档类型不允许此处使用元素“a”

 return '&'; 

在不允许的上下文中发现了上述元素。这可能意味着&gt;您有不正确的嵌套元素 - 例如“body”部分中的“style”元素而不是“head”内 - 或两个重叠的元素(这是不允许的)。

导致此错误的一个常见原因是在 HTML 文档中使用了 XHTML 语法。由于 >HTML 的隐式闭合元素规则,此错误可能会产生级联效应。例如,在 HTML 文档的“head”部分中对“meta”和“link”使用 XHTML 的“自关闭”标签可能会导致解析器推断出“head”部分和 > 的结尾。 ;“body”部分的开头(其中不允许使用“link”和“meta”;因此 > 报告错误)。

我的 DocType 是:

如果有人知道为什么会发生这种情况,非常感谢......

I'm using the awesome jQuery Cycle Plugin, with the pagerAnchorBuilder to build some pager items, so the user is able to switch between images.

Here's my code.

    jQuery(function() {
        jQuery('#slider<?php the_ID(); ?>').cycle({
            fx:     'fade',//scrollDown
            pager:  '#bullets<?php the_ID(); ?>', 
            pagerAnchorBuilder: function(idx, slide) { 
                return '<a href="#">&</a>'; 
            }
        });
    });

All is working pretty good, except by the fact that the return part gives me some problems with the W3C Validator..

Line 92, Column 31: document type does not allow element "a" here

              return '<a href="#">&</a>'; 

The element named above was found in a context where it is not allowed. This could mean >that you have incorrectly nested elements -- such as a "style" element in the "body" >section instead of inside "head" -- or two elements that overlap (which is not allowed).

One common cause for this error is the use of XHTML syntax in HTML documents. Due to >HTML's rules of implicitly closed elements, this error can create cascading effects. For >instance, using XHTML's "self-closing" tags for "meta" and "link" in the "head" section >of a HTML document may cause the parser to infer the end of the "head" section and the >beginning of the "body" section (where "link" and "meta" are not allowed; hence the >reported error).

My DocType is: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Many thanks if anybody had a clue about why this is happening...

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

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

发布评论

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

评论(1

雪花飘飘的天空 2024-10-26 15:02:44

它只是认为您试图在脚本标记(或 .js 文件)内插入锚元素,而该锚元素是无效的。忽略它,并记住验证并不是一切。您的主要目标是确保它有效。

编辑:如果您想获得完美的验证,甚至可能遵循一些良好实践,您可以使用以下内容:

return "<a href='#'>&<a>"

它使用 html 实体。翻译成html就是&。如果您想了解更多信息,这里是一个简单的 html 实体参考。

It just thinks that you're trying to insert an anchor element inside the script tag (or .js file), where it's invalid. Just ignore it, and remember that validation isn't everything. Your main goal is to make sure it works.

Edit: If you want to get a perfect validation and maybe even follow some good-practices, you can use the following:

return "<a href='#'>&<a>"

It uses html entities. Translated into html, it's <a href='#'>&<a>. Here is a simple html entities reference if you want to learn more.

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