Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Буфер обмена и графика & объекты


Автор: Се ля ви 9.12.2004, 23:07
Каверзный вопрос - а как сувать и вытаскивать из буфера графику и др. объекты? Хотя бы тока в експлорере...

Бился над этим как-то - ничё не вышло... smile

Автор: Aliance 10.12.2004, 19:50
Никак

Автор: Sardar 11.12.2004, 01:54
Технически в ИЕ есть два интересных обьекта: clipboardData и event.dataTransfer, базовые интерфейсы одинаковые: getData(format), setData(format).
Форматом может быть строка("TEXT") или URL("URL"), во второ случае это путь до картинки и т.п.

Читаем об этом здесь: http://msdn.microsoft.com/workshop/author/datatransfer/overview.asp?frame=false
http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/clipboarddata.asp?frame=false

У меня ничего не вышло, при любых опросах getData возвращается null smile

HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head>
<script language="Javascript" type="text/javascript">
<!--
function copyTest(im) {
alert(event.dataTransfer.setData("URL", im.src));
alert(event.dataTransfer.getData("URL"));
}
function pasteTest(o) {
o.innerHTML=clipboardData.getData("URL");
}
//-->
</script>
</head>

<body>

<span onClick="pasteTest(this)">Test</span>
<img src="Foto 20.jpg" ondragstart="copyTest(this);">
</body>
</html>

Автор: pythonwin 27.9.2006, 11:37
Код

<html>
 <head>
  <script type="application/x-javascript">
function draw() {
 var canvas = document.getElementById("canvas");
 var ctx = canvas.getContext("2d");

 ctx.fillStyle = "rgb(200,0,0)";
 ctx.fillRect (10, 10, 55, 50);

 ctx.fillStyle = "rgba(0, 0, 200, 0.5)";
 ctx.fillRect (30, 30, 55, 50);
}
  </script>
 </head>
 <body onload="draw()">
   <canvas id="canvas" width="300" height="300"></canvas>
 </body>
</html>

работает хорошо только в FF

Автор: GoodBoy 27.9.2006, 13:09
Sardar, да, с "URL" что-то не катит....  Вот так только получается:

Код
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<script language="Javascript" type="text/javascript">
function copyTest(im) {
    clipboardData.setData("TEXT", im.src);
    clipboardData.getData("TEXT");
}
function pasteTest(o) {
    o.innerHTML="<img src="+clipboardData.getData("TEXT")+">";
}
</script> 
</head>

<body>
<img src="chaks.jpg" onclick="copyTest(this);">&nbsp;&nbsp;&nbsp;
<span onclick="pasteTest(this)" style="border:red 1px solid">Test</span>
</body>
</html>

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)