瀏覽器 Plug-in
• Windows:可能要寫 ActiveX Control,
會有⼀一堆安全性問題…
• Mac OS X:原本 WebKit Plug-in 超好寫,
但是 10.7 Lion 之後禁⽌止 Safari 載⼊入
WebKit Plug-in…
Sunday, August 26,
Slide 9
Slide 9 text
Demo
• Sample Code:https://github.com/zonble/
NativeDrag
• 參考⽂文件:WebKit DOM Programming
Topics - Using Drag and Drop From
JavaScript
Sunday, August 26,
JavaScript
• 要讓⼀一個 HTML Element 變成可以⽤用
Native Drag 拖拉
• 加上 CSS 屬性:-webkit-user-drag:
element;
• 加上 ondragstart 的 handler
•
Sunday, August 26,
Slide 14
Slide 14 text
JavaScript
呼叫系統剪貼簿
dragstart = function(this, event) {
var dataTransfer = event.dataTransfer;
dataTransfer.setData(“key”, “value
string”);
return true;
};
Sunday, August 26,
Slide 15
Slide 15 text
Objective C
• 註冊可以 Drop 的 Data Type
• [self.tableView registerForDraggedTypes:@[@”key”]];
• NSView 需要實作 NSDraggingDestination
才能⽀支援 Drop 資料
• NSTableView DataSource 需要實作兩個
method
• tableView:validateDrop:proposedRow:proposedDropOperation:
• tableView:acceptDrop:row:dropOperation:
Sunday, August 26,