2012-01-03 3 views
0
var holder = document.getElementById('cms'); 

holder.ondragstart =function(e) 
{ 
dragID =e.srcElement.id; 
dregCl =e.srcElement.getAttribute('class'); 
if(dragID ==='cms_tools'){ cmsPanel =document.getElementById('cms_tools'); } 
} 

holder.ondragover = function(e) 
{ 
if(dragID ==='cms_tools') 
{ 
cmsPanel.style.top = (e.clientY-7) +'px'; 
cmsPanel.style.left = (e.clientX-250) +'px'; }} 

holder.ondragend = function(e) 
{ 
delete window.dragID; 
if(dregCl ==='imglib'){ 
e.target.removeAttribute('width'); 
e.target.removeAttribute('height'); 
e.target.removeAttribute('class'); } } 


holder.ondrop = function (e) 
{ 

} 

シンプルであるようです。私はパネルに幅=と高さ=でサイズダウンされたイメージを持っていて、イメージがドロップされたときにそれらを削除する必要があります。表示されているコードはこれを行いますが、宛先イメージではなくソースイメージに適用します。私はソースイメージではなく、イメージがドロップされることに対処するための1つの単語解決策を見つけることができないようです。標準的なjavascript、独自のライブラリ、または複雑な提案に制限された回答を保管してください。このプロジェクトには上記の例外を含まない要件があるため、このスレッドを閉じないでください。前もって感謝します。ドラッグアンドドロップ操作中にドロップされた画像の属性を削除するにはどうすればよいですか?

答えて

0
holder.ondragstart =function(e) 
{ 
Img_Src_Drop =e.target.getAttribute('src'); 
dragID =e.srcElement.id; 
dregCl =e.srcElement.getAttribute('class'); 
if(dragID ==='cms_tools'){ cmsPanel =document.getElementById('cms_tools'); }} 
holder.ondragover = function(e) 
{ 
if(dragID ==='cms_tools') 
{ 
cmsPanel.style.top = (e.clientY-7) +'px'; 
cmsPanel.style.left = (e.clientX-250) +'px'; }} 
holder.ondragend = function(e) 
{ 
delete window.dragID; 
if(dregCl ==='imglib'){ 
e.preventDefault; 
document.execCommand('InsertImage',null,Img_Src_Drop); }} 
holder.ondrop = function (e) 
{ e.preventDefault; } 

これは1語以上ではありませんでしたが、修正は単にデフォルトを防止して新しい画像を挿入することでした。私が探していたものではありませんが、望みどおりに動作します。この投稿が似たような縛りを持つ他の人に役立つことを願って

関連する問題