2009年6月26日 星期五

zeroclipboard複數指定方法--改變大小

原先的reposition函式會提醒你
// reposition our floating div, optionally to new container
// warning: container CANNOT change size, only position
他只會移動位置並不會改變大小
當要指定的元素大小不一時,就有點麻煩了

回頭看在glue()裡創建新的DIV遮罩時會設定下列參數
style.position = 'absolute';
style.left = '' + box.left + 'px';
style.top = '' + box.top + 'px';
style.width = '' + box.width + 'px';
style.height = '' + box.height + 'px';
style.zIndex = zIndex;
而reposition()只有重新定義其中left及top的位置參數
所以可以在reposition()中加入設定width及height這兩行程式碼
但這兩行只是設定style的顯示
最重要的是這一行
this.div.innerHTML = this.getHTML( box.width, box.height );
它是將在getHTML()中寫好導入flash的html丟入div中,使它成為一個flash元件
重新呼叫此函式才能變更flash的大小

將上列三行加入reposition即可
不過在IE及FireFox上都運行無誤,在Chrome,Safari上則會卡卡的,Chrome有時會完全卡住
其他的瀏覽器我就沒去試了,這也是他為什麼不讓我們改變大小的原因吧

沒有留言:

張貼留言