使jQuery DOMWindow中包含的链接在同一窗口中打开
我有一个jQuery窗口,在我的一个网页上加载了AJAX。出于各种技术原因,我不得不使用AJAX而不是iFrame来加载内容。目前,位于DOMWindow内的任何超链接都会导致浏览器重新加载新页面,而不是简单地打开同一DOMWindow内的内容 有没有办法在同一窗口中打开超链接。我已尝试在超链接代码中包含使jQuery DOMWindow中包含的链接在同一窗口中打开,jquery,ajax,dom,Jquery,Ajax,Dom,我有一个jQuery窗口,在我的一个网页上加载了AJAX。出于各种技术原因,我不得不使用AJAX而不是iFrame来加载内容。目前,位于DOMWindow内的任何超链接都会导致浏览器重新加载新页面,而不是简单地打开同一DOMWindow内的内容 有没有办法在同一窗口中打开超链接。我已尝试在超链接代码中包含target=“\u self” 这是我的jQuery DOMWindow的配置: $('.AjaxDOMWindow').openDOMWindow({
target=“\u self”
这是我的jQuery DOMWindow的配置:
$('.AjaxDOMWindow').openDOMWindow({
anchoredClassName:'DOMWindow',
draggable: 1,
eventType:'click',
height:500,
loader:1,
loaderHeight:16,
loaderImagePath:'/js/jquery/DOMWindow/animationProcessing.gif',
loaderWidth:17,
positionLeft:0,
positionTop:0,
positionType:'centered',
width:700,
windowHTTPType:'get',
windowSource:'ajax'
});
这是有问题的超链接:
<a href="/foo/foo/edit_map_pin_more.htm?mAddressBox0=FALSE&width=800&height=600&mPin_ID=5"><b>View More Icons</b></a>
我想问题在于没有真正意义上的窗口。主页中只有一个
div
,充当DOM窗口。因此,该div中的任何链接都肯定会刷新主文档
保持一切不变,并添加以下内容:
$('.AjaxDOMWindow a').live("click", function(){
$(this).openDOMWindow({
anchoredClassName:'DOMWindow',
draggable: 1,
eventType:'click',
height:500,
loader:1,
loaderHeight:16,
loaderImagePath:'/js/jquery/DOMWindow/animationProcessing.gif',
loaderWidth:17,
positionLeft:0,
positionTop:0,
positionType:'centered',
width:700,
windowHTTPType:'get',
windowSource:'ajax'
});
});
我想问题是没有真正意义上的窗口。主页中只有一个
div
,充当DOM窗口。因此,该div中的任何链接都肯定会刷新主文档
保持一切不变,并添加以下内容:
$('.AjaxDOMWindow a').live("click", function(){
$(this).openDOMWindow({
anchoredClassName:'DOMWindow',
draggable: 1,
eventType:'click',
height:500,
loader:1,
loaderHeight:16,
loaderImagePath:'/js/jquery/DOMWindow/animationProcessing.gif',
loaderWidth:17,
positionLeft:0,
positionTop:0,
positionType:'centered',
width:700,
windowHTTPType:'get',
windowSource:'ajax'
});
});
我认为对Dom窗口插件的调用并没有绑定到锚定标记。 我将上述函数放在document.ready函数中,该函数在dom加载并运行后绑定
$(document).ready(function(){
$(AjaxDOMWindow ).openDOMWindow({
anchoredClassName:'DOMWindow',
draggable: 1,
eventType:'click',
height:500,
loader:1,
loaderHeight:16,
loaderImagePath:'/js/jquery/DOMWindow/animationProcessing.gif',
loaderWidth:17,
positionLeft:0,
positionTop:0,
positionType:'centered',
width:700,
windowHTTPType:'get',
windowSource:'ajax'
});
});
我认为对Dom窗口插件的调用并没有绑定到锚定标记。 我将上述函数放在document.ready函数中,该函数在dom加载并运行后绑定
$(document).ready(function(){
$(AjaxDOMWindow ).openDOMWindow({
anchoredClassName:'DOMWindow',
draggable: 1,
eventType:'click',
height:500,
loader:1,
loaderHeight:16,
loaderImagePath:'/js/jquery/DOMWindow/animationProcessing.gif',
loaderWidth:17,
positionLeft:0,
positionTop:0,
positionType:'centered',
width:700,
windowHTTPType:'get',
windowSource:'ajax'
});
});
如果你不添加一个目标属性,它应该以相同的方式打开window@3nigma,我编辑了这个问题以包含超链接的HTML代码。你知道为什么它会导致浏览器打开一个全新的父页面吗?如果你不添加目标属性,它应该以相同的方式打开window@3nigma,我编辑了这个问题以包含超链接的HTML代码。知道为什么它会导致浏览器打开一个全新的父页面吗?既然
.live
已被弃用,那么什么才是合适的替代方法?您必须使用新的on()
方法。关于它的更多信息:既然.live
已被弃用,那么什么才是合适的替代方法?您必须使用新的on()
方法。更多信息请点击此处: