Javascript jQuery接管所有锚定标记

Javascript jQuery接管所有锚定标记,javascript,jquery,html,popup,anchor,Javascript,Jquery,Html,Popup,Anchor,我已经为弹出窗口实现了jQuery和jQueryMobile,但是在一些测试之后,我注意到jQuery正在接管所有锚。如果我注释掉jQuery脚本的链接,其中一个和我的锚按预期工作,如果我取消注释它们,这些锚将再次被接管,并且不允许href正常运行。任何人都知道如何解决这个问题,至少可以说是相当恼人的。这是样品 <div> <ul> <li><a href="http://www.somesite.com">Somesite</a>

我已经为弹出窗口实现了jQuery和jQueryMobile,但是在一些测试之后,我注意到jQuery正在接管所有锚。如果我注释掉jQuery脚本的链接,其中一个和我的锚按预期工作,如果我取消注释它们,这些锚将再次被接管,并且不允许href正常运行。任何人都知道如何解决这个问题,至少可以说是相当恼人的。这是样品

<div>
 <ul>
  <li><a href="http://www.somesite.com">Somesite</a></li>
 </ul>
</div>
<div>
 <a href="#popupVideo" data-rel="popup" data-position-to="window" data-inline="true">Click</a>
 <div data-role="popup" id="popupVideo" data-overlay-theme="a" data-theme="d" data-tolerance="15,15" class="ui-content">
  <iframe width="560" height="315" src="http://www.somevideo.com" frameborder="0" allowfullscreen></iframe>
 </div>
</div>

    $( document ).on( "pageinit", function() {
        winW = window.innerWidth;
        winH = window.innerHeight;

        $( "#popupVideo iframe" )
            .attr( "width", 0 )
            .attr( "height", 0 );

        $( "#popupVideo" ).on({
            popupbeforeposition: function() {
                var size = scale( winW, winH, 15, 1 ),
                    w = size.width,
                    h = size.height;

                $( "#popupVideo iframe" )
                    .attr( "width", w )
                    .attr( "height", h );
            },
            popupafterclose: function() {
                $( "#popupVideo iframe" )
                    .attr( "width", 0 )
                    .attr( "height", 0 );    
            }
        });
    }); 

$(document).on(“pageinit”,function(){ winW=window.innerWidth; winH=window.innerHeight; $(“popupVideo iframe”) .attr(“宽度”,0) .attr(“高度”,0); $(“#弹出视频”)。在({ PopupBeforLocation:函数(){ 变量大小=刻度(winW、winH、15、1), w=尺寸。宽度, h=尺寸。高度; $(“popupVideo iframe”) .attr(“宽度”,w) .attr(“高度”,h); }, popupafterclose:函数(){ $(“popupVideo iframe”) .attr(“宽度”,0) .attr(“高度”,0); } }); });

然后我得到了jQuery示例附带的正确代码,该代码中没有特定于锚点和特定于id的内容。另外,如果我删除调整弹出窗口的脚本,它仍然不起作用,我唯一链接的就是jQuery文件。我也在使用最新的jQuery,如果这对1.9.1和mobile1.3.0有帮助的话。我使用的是1.2.0,但我认为更新的jQuery可能会解决这个问题,但没有用。提前谢谢。

我很确定您指的是jQuery mobile的默认行为。jQuery mobile中锚定标记的默认行为是使用ajax请求:

jquerymobile设计用于使用简单的页面链接约定。 基本上,您可以像平常一样链接页面和资产,并且 jQuery Mobile将在单个页面中自动处理页面请求 模型,尽可能使用Ajax。当Ajax不可用时(例如 非相同的域url,或者如果使用 链接),而是使用正常的http请求

此模型的目标是允许开发人员使用 最佳实践-普通链接在没有任何 特殊配置-同时创造丰富的本地体验 这是标准HTTP请求无法实现的

此外:

指向其他域或具有rel=“external”的链接, 数据ajax=“false”或目标属性不会使用ajax加载。 相反,这些链接将导致整个页面刷新,而不显示动画 过渡。两个属性(rel=“external”和data ajax=“false”) 具有相同的效果,但语义不同:rel=“external” 链接到其他站点或域时应使用,而 data ajax=“false”对于简单地选择页面非常有用 域不允许通过Ajax加载。由于安全限制,, 该框架总是在Ajax之外选择指向外部域的链接 行为

在版本1.1中,我们添加了对在服务器上使用数据ajax=“false”的支持 父容器,允许您排除大量链接 来自Ajax导航系统。这样就避免了添加此选项的需要 属性设置为容器中的每个链接。要激活这个 功能,$.mobile.ignoreContentEnabled必须设置为true。 在使用和设置此选项之前,请检查配置默认值 选择权

注意:在构建jQuery移动应用程序时 导航系统在上全局禁用或经常禁用 对于单个链接,建议禁用$.mobile.pushStateEnabled 全局配置选项以避免不一致的导航行为 在某些浏览器中


向我们展示你的javascript代码。说真的,为什么你不认为你的javascript代码很重要?特别是在这个问题上,我添加了JS,即使我删除了代码,链接仍然不起作用,弹出窗口仍然在尝试出现。这只是调整弹出窗口的大小……当您只包含jQuery js脚本时,不会发生这种情况。所以我们需要看看你加了什么你有我的密码。。。锚定链接和弹出视频我刚刚取出了href链接,因为它们不向公众开放。我看到了对快速和直接响应的感谢。我想我必须为这个页面找到更好的解决方案。再次感谢。您可以始终排除父对象以处理大量链接。