从javascript函数打开Shadowbox

时间:2011-07-04 13:07:32

标签: javascript asp.net shadowbox

我正试图在asp.net网络表单上的单选按钮onclick事件中打开Shadowbox但没有成功。我最初使用按钮点击打开它,工作正常,但现在需要确保选择单选按钮选项时它发生。然后我尝试单击javascript(button.click())中的按钮,但这只适用于IE和更新版本的firefox。所以我选择使用Shadowbox.open,但它引起了一些问题。这是我的代码:

if (yes.checked == true)
    {            
        var url = 'http://localhost:52963/items.aspx';
        Shadowbox.open( { content:    url, 
                        type:        "iframe", 
                        title:         "sbTitle ", 
                        options:   {   initialHeight:350, 
                                        initialWidth:450, 
                                        loadingImage:"loading.gif", 
                                        handleUnsupported:  'link' 
                                    } 
                     }); 
    }

这似乎只是打开了叠加层,但没有打开它里面的网页。谁知道我哪里出错?

2 个答案:

答案 0 :(得分:2)

显然我需要添加一个播放器以及一个类型。所以修改后的代码是这样的:

Shadowbox.open( { content:    url, 
                    type:        "iframe", 
                    player:      "iframe",
                    title:         "sbTitle ", 
                    options:   {   initialHeight:350, 
                                    initialWidth:450, 
                                    loadingImage:"loading.gif", 
                                    handleUnsupported:  'link' 
                                } 
                 }); 

答案 1 :(得分:1)

我遇到了很多麻烦,我尝试从jquery使用.trigger('click')点击,但是在chrome中没有用(在firefox中工作)

事实证明,答案非常简单,类似于电子答案,但却拨打了电话。

您的图片位于普通的影箱库中

<div class="gallery">
  <a  href="/img1.jpg" rel="shadowbox[gallery1]" >
    <img id="Image0" src="/img1.jpg" />
  </a>
  <a  href="/img2.jpg" rel="shadowbox[gallery1]" >
    <img id="Image1" src="/img2.jpg" />
  </a>
</div>

然后是您的可点击链接

<a href="#" class="galleryLauncher" gallery="gallery1">Click to view all images</a>

我通过jquery在document.ready call

中连接了可点击链接
$('.galleryLauncher').click(function () {

 //gallery to launch
    var id = $(this).attr('gallery');

 //get the first item out of the cache
    var content = Shadowbox.cache[1].content;

 //default options object
    var options = {}; 

 //now we can open it
    Shadowbox.open({
        content: content,
        player: "img",
        gallery: id,
        options: options
    });

    return false;
});