Jquery 如何从颜色框本身中加载的内容设置颜色框标题?
让我解释一下。我使用Colorbox加载HTML文件并在iframe中显示它。HTML文件包含Jquery 如何从颜色框本身中加载的内容设置颜色框标题?,jquery,colorbox,title,Jquery,Colorbox,Title,让我解释一下。我使用Colorbox加载HTML文件并在iframe中显示它。HTML文件包含标记。是否可以使用该标记作为颜色框弹出窗口的标题?我可以使用onComplete事件,但如何使用 编辑:我应该澄清代码: 父HTML: <!doctype html> <html> <head> <title>This is parent</title> <script src="jquery.js
标记。是否可以使用该
标记作为颜色框弹出窗口的标题?我可以使用onComplete
事件,但如何使用
编辑:我应该澄清代码:
父HTML:
<!doctype html>
<html>
<head>
<title>This is parent</title>
<script src="jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$('a.cb').colorbox({
iframe : true,
title : function() { /* here goes the code */ },
});
});
</script>
</head>
<body>
<a class="cb" href="popup.html">Popup</a>
</body>
</html>
这是家长
$(文档).ready(函数(){
$('a.cb')。颜色框({
伊夫拉姆:是的,
标题:function(){/*下面是代码*/},
});
});
子HTML:
<!doctype html>
<html>
<head>
<title>The title</title>
</head>
<body>
...
</body>
</html>
标题
...
基本上,我希望颜色框显示子HTML代码的标题。很难说,但我猜大概是这样的
var titleText = $(fetchedHTML).find('title').text();
我不确定我是否理解你的问题,如果我远离主题,让我知道删除我的帖子:) 您可以通过函数设置颜色框标题,在该函数中,您可以获取iframe标题并将其设置为颜色框标题
$("mycolorbox").colorbox({rel: 'gal', title: function(){
var title = $( "#frame_id").contents( ).find( "title").html( );
return 'title';
}});
我不确定代码是否完全正确,但它可能会有所帮助:)根据文档的不同,这可能是不可能的。如果iframed文档与父文档位于同一域中,您应该能够执行以下操作:
$(document).ready(function(){
$('a.cb').colorbox({
iframe : true,
fastIframe: false,
onComplete: function(){
var title = $('.cboxIframe')[0].contentWindow.document.title;
$('#cboxTitle').text(title);
}
});
});
如何获取
fetchedHTML
?@NikolayDutchuk通过ajax调用获取popup.html
html,并在成功回调中使用它。是的,这可以解决问题。然而,我不得不手动处理AJAX,而不是让Colorbox帮我处理。谢谢!正是我想要的。关键点是fastIframe
。继续做好彩盒的工作。