Event på createlink
Hvordan laver jeg eventhandel til denne popoupmenu som er til at oprette et link i en editor.if (cmdID == 'custumlink') {
???
}
Selv koden på popup dokumentet insert_link.html ligger under her
-------------------------------------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD W3 HTML 3.2//EN">
<HTML id=dlgImage STYLE="width: 40.1em; height: 23em">
<HEAD>
<script language="javascript1.2" src="tabula_external.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv="MSThemeCompatible" content="Yes">
<TITLE>Insert link</TITLE>
<style>
html, body, button, div, input, select, fieldset { font-family: MS Shell Dlg; font-size: 8pt; position: absolute; };
</style>
<SCRIPT defer>
var initialize=false;
var found=false;
var elm;
function _CloseOnEsc() {
if (event.keyCode == 27) { window.close(); return; }
}
function _getTextRange(elm) {
var r = elm.parentTextEdit.createTextRange();
r.moveToElementText(elm);
return r;
}
window.onerror = HandleError
function HandleError(message, url, line) {
var str = "An error has occurred in this dialog." + "\n\n"
+ "Error at line: " + line + "\n" + message;
alert(str);
window.close();
return true;
}
function Init() {
var grngMaster;
var htmlSelectionControl = "Control";
var globalDoc = window.dialogArguments;
var sel=globalDoc.DOM.selection;
initialize=true;
// event handlers
document.body.onkeypress = _CloseOnEsc;
btnOK.onclick = new Function("btnOKClick()");
grngMaster = sel.createRange();
if (sel.type == htmlSelectionControl) {
elm = grngMaster.item(0);
} else {
elm = grngMaster.parentElement();
}
found=false;
while ((!found) && (elm.tagName.toLowerCase()!='body')) {
if(elm.tagName.toLowerCase() == 'a') {
found = true;
} else {
elm = elm.parentElement;
}
}
if (found){
txtLink.value = elm.href;
if (txtLink.value.indexOf(':')!=0) {
selLinkType.value=txtLink.value.substring(0,txtLink.value.indexOf(':'));
} else {
selLinkType.value='';
}
if (elm.target!='') {
if (elm.target.toLowerCase()=='_blank' || elm.target.toLowerCase()=='_top' || elm.target.toLowerCase()=='_parent' || elm.target.toLowerCase()=='_self') {
selTarget.value=elm.target.toLowerCase()
txtTargetOther.disabled=true
} else {
selTarget.value='';
txtTargetOther.disabled=false;
txtTargetOther.value=elm.target;
}
}
txtLinkText.value=elm.innerHTML;
} else {
if (sel.type == htmlSelectionControl) {
txtLinkText.value=grngMaster.item(0).outerHTML;
} else {
txtLinkText.value=grngMaster.htmlText
}
}
txtLink.focus();
initialize=false;
}
function _isValidNumber(txtBox) {
var val = parseInt(txtBox);
if (isNaN(val) || val < 0 || val > 999) { return false; }
return true;
}
function selTargetChange() {
if (selTarget.value=='') {
txtTargetOther.disabled=false;
} else {
txtTargetOther.disabled=true
}
}
function selLinkTypeChange() {
if (!initialize) {
if (txtLink.value.indexOf(':')!=0) {
if (selLinkType.value!='') {
txtLink.value= selLinkType.value+txtLink.value.substring(txtLink.value.indexOf(':'));
} else {
txtLink.value=selLinkType.value+txtLink.value;
}
} else {
if (selLinkType.value!='') {
txtLink.value= selLinkType.value+'://'+txtLink.value;
}
}
}
}
function link_action() {
tabula_link_action(selXType.value);
}
function btnOKClick() {
var elmImage;
var intAlignment;
var htmlSelectionControl = "Control";
var globalDoc = window.dialogArguments;
var grngMaster = globalDoc.DOM.selection.createRange();
var sel=globalDoc.DOM.selection;
// error checking
if (!txtLink.value || txtLink.value == "http://") {
alert("Link URL must be specified.");
txtLink.focus();
return;
}
// build link
var newlink='<a href="'+txtLink.value+'"';
if (selTarget.value!='') {
newlink=newlink+' target="'+selTarget.value+'"';
}
else if (txtTargetOther.disabled==false && txtTargetOther.value!='') {
newlink=newlink+' target="'+txtTargetOther.value+'"';
}
newlink=newlink+'>'+txtLinkText.value+'</a>';
if (found) {
elm.href=txtLink.value;
if (selTarget.value!='') {
elm.target=selTarget.value;
}
else if (txtTargetOther.disabled==false && txtTargetOther.value!='') {
elm.target=txtTargetOther.value;
}
else {
elm.removeAttribute('target');
}
}
else if (sel.type == htmlSelectionControl) {
grngMaster.item(0).outerHTML=newlink;
}
else {
grngMaster.pasteHTML(newlink);
}
// grngMaster.collapse(false);
// grngMaster.select();
window.close();
}
</SCRIPT>
</HEAD>
<BODY id=bdy onload="Init()" style="background: threedface; color: windowtext;" scroll=no>
<DIV id=divTargetOther style="left: 8.54em; top: 9.9168em; width: 7em; height: 1.2168em; ">Window Name:</DIV>
<INPUT ID=txtTargetOther type=text style="left: 16.54em; top: 9.647em; width: 13.36em;height: 2.1294em; " tabIndex=3 onfocus="select()">
<DIV id=divLinkText style="left: 0.98em; top: 12.8067em; width: 6.58em; height: 1.2168em; ">Link Text:</DIV>
<INPUT type=text ID=txtLinkText tabIndex=20 style="left: 8.54em; top: 12.5025em; width: 21.5em; height: 2.1294em; " onfocus="select()" disabled>
<DIV id=divLink style="left: 0.98em; top: 4.1067em; width: 6.58em; height: 1.2168em; ">Link:</DIV>
<INPUT type=text ID=txtLink tabIndex=1 style="left: 8.54em; top: 3.8025em; width: 21.5em; height: 2.1294em; " onfocus="select()">
<DIV id=divLinkType style="left: 0.98em; top: 1.2168em; width: 4.76em; height: 1.2168em; ">Link Type:</DIV>
<SELECT size=1 ID=selLinkType tabIndex=15 style="left: 8.54em; top: 1.0647em; width: 6.72em; height: 1.2168em; " onChange="selLinkTypeChange()">
<OPTION id=optFtp value="ftp"> ftp: </OPTION>
<OPTION id=optHTTP value="http" SELECTED> http: </OPTION>
<OPTION id=optHTTPS value="https"> https: </OPTION>
<OPTION id=optMailto value="mailto"> mailto: </OPTION>
</SELECT>
<DIV id=divTarget style="left: 0.98em; top: 7.0168em; width: 4.76em; height: 1.2168em; ">Target:</DIV>
<SELECT size=1 ID=selTarget tabIndex=2 style="left: 8.54em; top: 6.7647em; width: 13.72em; height: 1.2168em; " onChange="selTargetChange()">
<OPTION id=optNotSet2 value="" SELECTED> </OPTION>
<OPTION id=optBlank value="_blank"> New Window (_blank) </OPTION>
<OPTION id=optSelf value="_self"> Same Window (_self) </OPTION>
<OPTION id=optParent value="_parent"> Parent Window (_parent) </OPTION>
<OPTION id=optTop value="_top"> Browser Window (_top) </OPTION>
</SELECT>
<BUTTON ID=btnOK style="left: 31.36em; top: 1.0647em; width: 7em; height: 2.2em; " type=submit tabIndex=40>OK</BUTTON>
<BUTTON ID=btnCancel style="left: 31.36em; top: 3.6504em; width: 7em; height: 2.2em; " type=reset tabIndex=45 onClick="window.close();">Cancel</BUTTON>
<!--
<BUTTON ID=btnGetImage style="left: 31.36em; top: 12.5504em; width: 7em; height: 2.2em; " type=button tabIndex=45 onClick="link_action()">Find Content</BUTTON>
<SELECT size=1 ID=selXType tabIndex=2 style="left: 28.36em; top: 16em; width: 10em; height: 1.2168em; " >
<OPTION value="article"> Article </OPTION>
<OPTION value="slideshow"> Slideshow </OPTION>
<OPTION value="timeline"> Tidslinie </OPTION>
</SELECT>
-->
</BODY>
</HTML>
