2014-02-21 67 views
0

我使用highslide彈出。我想有一個穩定的位置彈出。高山滑線固定位置彈出

我想:

hs.marginTop="120"; 

它工作時,我有很多的文字......當文本短,彈出彈出隨機的。通常在右下角

我的代碼:

    hs.graphicsDir = "./includes/highslide/graphics/"; 
        hs.outlineType = "rounded-white"; 
        hs.wrapperClassName = "draggable-header"; 
        hs.marginTop="120"; 

     $(function() { 
         var dialog=$(".siteText").html(); 
         $("#highslide-html .highslide-body").html(dialog); 

         if(!$(".highslide-body").is(":empty")) 
         { 
          hs.htmlExpand(this, { contentId: \'highslide-html\' }) 
         } 

        }); 

HTML:

 <div class="highslide-html-content" id="highslide-html" style="width:950px;color:black;"> 

        <div class="highslide-header"> 
          <ul> 
            <li class="highslide-close"> 
              <a href="#" title="Close (esc)" onclick="return hs.close(this)"><span>Close</span></a> 
            </li> 
          </ul> 
        </div> 
        <div class="highslide-body"> 
        </div> 
       <div class="highslide-footer"> 
        <div> 
         <span class="highslide-resize" title="Resize"> 
          <span></span> 
         </span> 
        </div> 
       </div> 
      </div> 

編輯: 它的工作原理......但很醜陋的效果...彈出跳躍。首先在底部,然後跳到頂部。

if (!hs.ie || hs.uaVersion > 6) hs.extend (hs.Expander.prototype, { 
fix: function(on) { 
    var sign = on ? -1 : 1, 
     stl = this.wrapper.style; 

    if (!on) hs.getPageSize(); // recalculate scroll positions 


    hs.setStyles (this.wrapper, { 
     position: "fixed", 
     zoom: 1, // IE7 hasLayout bug, 
     left: (parseInt(stl.left) + sign * hs.page.scrollLeft) +"px", 
     top: "125px" 
    }); 

    if (this.outline) { 
     stl = this.outline.table.style; 
     hs.setStyles (this.outline.table, { 
      position: "fixed", 
      zoom: 1, // IE7 hasLayout bug, 
      left: (parseInt(stl.left) + sign * hs.page.scrollLeft) +"px", 
      top: "120px" 
     }); 

    } 
    this.fixed = on; // flag for use on dragging 
}, 
onAfterExpand: function() { 
    this.fix(true); // fix the popup to viewport coordinates 
}, 

onBeforeClose: function() { 
    this.fix(false); // unfix to get the animation right 
}, 

onDrop: function() { 
    this.fix(true); // fix it again after dragging 
}, 

onDrag: function(sender, args) { 
    if (this.fixed) { // only unfix it on the first drag event 
     this.fix(true); 
    } 
}}); 

THX :)

回答

0

使用hs.marginTop是行不通的。你所追求的是hs.targetX和hs.targetY。這些讓你把彈出窗口定位在一個固定的位置,不管是什麼。請參閱API:http://highslide.com/ref/hs.targetX。注意對帶有ID的目標「div」的要求 - 它可以只是一個空的佔位符,但它必須存在。

0

就在您的highslide CSS添加

.highslide-container 
{ 
    position:fixed; top:200px; left:-380px 
    } 

您正在使用和刪除:僅從您是從給定的位置使用highslide腳本

position: 'absolute', 
       left: 0, 
       top: 0, 

className: 'highslide-container' 
      }, { 
       position: 'absolute', 
       left: 0, 
       top: 0, 
       width: '100%', 
       zIndex: hs.zIndexCounter, 
       direction: 'ltr' 
      }, 
      document.body,