jQuery + Flex 通過拖拽方式動態(tài)改變圖片的代碼
更新時間:2011年08月03日 23:45:53 作者:
功能終于告一段落了,實現(xiàn)了預期的功能。遇到了一個小麻煩,js 會把某些變量( 如果你是通過對象的方式傳遞的,將在傳遞之后丟失類型信息 ,后面*號部分)
代碼如下:
function init() {
if(swfobject.hasFlashPlayerVersion("10")){
var flashvars = {};
flashvars.xmlPath = "coffee";
flashvars.name = "coffee";
var params = {};
params.quality = "high";
params.wmode = "transparent";
var attributes = {};
attributes.id = "swf_editer";
swfobject.embedSWF("../img/swf/PhotoEditer2.swf","editarea","670","690","10.3"
,"../img/swf/playerProductInstall.swf",flashvars,params,attributes);
$( ".draggable" ).draggable({ revert: true, helper: "clone" });
$("body").bind("mousemove",getListener);
}
}
var srcName = "";
var currentX = 0;
var currentY = 0;
var currentTop = 0;
function setImgLocal(srcName) {
bindDroppable();
this.srcName = srcName ;
}
function changeSwfImg() {
if(srcName === "" || srcName === null){
return ;
}
var swf = swfobject.getObjectById("swf_editer");
var swfCoord = getSwfCoord();
var dom = {};
dom.name = srcName;
dom.changeFlg = 0;
//*********************************
var tmp1 = swfCoord.domY - 0;
tmp2 = swfCoord.domHeight - 220;
//*********************************
if((currentTop + currentY) > (swfCoord.domY + 100)
&& (currentTop + currentY) < (tmp1 + tmp2))
{
dom.changeFlg = currentX - swfCoord.domX < swfCoord.domWidth/2 ? 1 : 2;
}
swf.FlexManager(dom);
}
function bindDroppable() {
$("#swf_editer").droppable({
accept: "#dv_draggables img",
drop: function(event, ui) {
changeSwfImg();
}
});
}
function getListener(event) {
currentX = event.clientX;
currentY = event.clientY;
currentTop = document.documentElement.scrollTop ;
}
function getSwfCoord() {
var swf = swfobject.getObjectById("swf_editer");
var dom = {};
dom.domX = 0 , dom.domY = 0;
dom.domWidth = swf.width;
dom.domHeight = swf.height;
while(swf.offsetParent) {
dom.domX += swf.offsetLeft;
dom.domY += swf.offsetTop;
swf = swf.offsetParent;
}
return dom;
}
復制代碼 代碼如下:
function init() {
if(swfobject.hasFlashPlayerVersion("10")){
var flashvars = {};
flashvars.xmlPath = "coffee";
flashvars.name = "coffee";
var params = {};
params.quality = "high";
params.wmode = "transparent";
var attributes = {};
attributes.id = "swf_editer";
swfobject.embedSWF("../img/swf/PhotoEditer2.swf","editarea","670","690","10.3"
,"../img/swf/playerProductInstall.swf",flashvars,params,attributes);
$( ".draggable" ).draggable({ revert: true, helper: "clone" });
$("body").bind("mousemove",getListener);
}
}
var srcName = "";
var currentX = 0;
var currentY = 0;
var currentTop = 0;
function setImgLocal(srcName) {
bindDroppable();
this.srcName = srcName ;
}
function changeSwfImg() {
if(srcName === "" || srcName === null){
return ;
}
var swf = swfobject.getObjectById("swf_editer");
var swfCoord = getSwfCoord();
var dom = {};
dom.name = srcName;
dom.changeFlg = 0;
//*********************************
var tmp1 = swfCoord.domY - 0;
tmp2 = swfCoord.domHeight - 220;
//*********************************
if((currentTop + currentY) > (swfCoord.domY + 100)
&& (currentTop + currentY) < (tmp1 + tmp2))
{
dom.changeFlg = currentX - swfCoord.domX < swfCoord.domWidth/2 ? 1 : 2;
}
swf.FlexManager(dom);
}
function bindDroppable() {
$("#swf_editer").droppable({
accept: "#dv_draggables img",
drop: function(event, ui) {
changeSwfImg();
}
});
}
function getListener(event) {
currentX = event.clientX;
currentY = event.clientY;
currentTop = document.documentElement.scrollTop ;
}
function getSwfCoord() {
var swf = swfobject.getObjectById("swf_editer");
var dom = {};
dom.domX = 0 , dom.domY = 0;
dom.domWidth = swf.width;
dom.domHeight = swf.height;
while(swf.offsetParent) {
dom.domX += swf.offsetLeft;
dom.domY += swf.offsetTop;
swf = swf.offsetParent;
}
return dom;
}
相關文章
使用jQuery Rotare實現(xiàn)微信大轉盤抽獎功能
本文主要介紹使用jQuery Rotare實現(xiàn)微信大轉盤抽獎功能,并附實例講解,非常實用,有需要的朋友可以參考一下。2016-06-06
jQuery實現(xiàn)圖片放大預覽實現(xiàn)原理及代碼
jQuery實現(xiàn)圖片放大原理很簡單,就是將圖片顯示的尺寸變大后放在瀏覽器的一個指定位置,從而實現(xiàn)圖片的放大預覽,下面有個不錯的示例,感興趣的朋友可以參考下2013-09-09
jquery實現(xiàn)清新實用的網(wǎng)頁菜單效果
這篇文章主要介紹了jquery實現(xiàn)清新實用的網(wǎng)頁菜單效果,涉及jquery通過鼠標事件控制頁面元素的動態(tài)隱藏與顯示實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-08-08
jquery parent和parents的區(qū)別分析
從字面上不難看出parent是指取得一個包含著所有匹配元素的唯一父元素的元素集合。parents則是取得一個包含著所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通過一個可選的表達式進行篩選2013-10-10

