| Forum: JavaScript | 
																Thema: 
																	Automatisch target="blank" und border="0" | 
																	Von: 
																		G. Guest (
																	29.12.2003 14:03) | 
														
													
												
            
		Ich habe innerhalb eines CMS einen JS-Editor implementiert, der leider ein paar Schwächen aufweist, die ich leider alleine nicht in den Griff bekomme.
1.) Innerhalb des Editors gibt es eine Funktion, um Bilder einzufügen. Leider hat das Bild nicht automatisch border="0". Die Funktion sieht folgendermaßen aus:
function AddImage(rte) {
	imagePath = prompt('Enter Image URL:', 'http://');				
	if ((imagePath != null) && (imagePath != "")) {
		document.getElementById(rte).contentWindow.focus()
		document.getElementById(rte).contentWindow.document.execCommand('InsertImage', false, imagePath);
	}
	document.getElementById(rte).contentWindow.focus()
}
Und der Aufruf der Funktion:
				document.writeln('		<td><img class="btnImage" src="rte/images/post_button_image.gif" width="25" height="24" alt="Add Image" title="Add Image" onClick="AddImage(\'' + rte + '\')"></td>');
Hat jemand eine Idee, wie das Skript aussehen muß, um den Rand auf "O" zu stellen?
2.)Bei Verlinkungen die vom Editor erzeugt werden, gibt es keine Möglichkeit, das Target anzugeben.
function FormatText(rte, command, option) {
	if ((command == "forecolor") || (command == "hilitecolor")) {
		parent.command = command;
		buttonElement = document.getElementById(command);
		document.getElementById('cp' + rte).style.left = getOffsetLeft(buttonElement) + "px";
		document.getElementById('cp' + rte).style.top = (getOffsetTop(buttonElement) + buttonElement.offsetHeight) + "px";
		if (document.getElementById('cp' + rte).style.visibility == "hidden")
			document.getElementById('cp' + rte).style.visibility="visible";
		else {
			document.getElementById('cp' + rte).style.visibility="hidden";
		}
		
		//get current selected rte
		currentRTE = rte;
		
		//get current selected range
		var sel = document.getElementById(rte).contentWindow.document.selection; 
		if (sel!=null) {
			rng = sel.createRange();
		}
	}
	else if (command == "createlink") { // && browser.isIE55up == false
		var szURL = prompt("Enter a URL:", "");
		document.getElementById(rte).contentWindow.document.execCommand("Unlink",false,null)
		document.getElementById(rte).contentWindow.document.execCommand("CreateLink",false,szURL)
	}
	else {
		document.getElementById(rte).contentWindow.focus();
	  	document.getElementById(rte).contentWindow.document.execCommand(command, false, option);
		document.getElementById(rte).contentWindow.focus();
	}
}
Der Aufruf der Funktion sieht so aus:
document.writeln('		<td><img class="btnImage" src="rte/images/post_button_hyperlink.gif" width="25" height="24" alt="Insert Link" title="Insert Link" onClick="FormatText(\'' + rte + '\', \'createlink\')"></td>');
An welcher Stelle müsste hier z.B. target="blank" eingefügt werden? Ideal wäre natürlich ein Popup-menü mit Auswahl zwischen _blank, _self etc. :-)
Vielen Dank für Eure Hilfe
Lufine
	
	
													
												
            
														
		
			
																
																	
																		| Betreff | 
																		Von | 
																		Datum | 
																	 
															
		
			| 
								 |  
									
										
											
												   | 
												
													
														Re: Automatisch target="blank" und border="0"
													
													
														
															
																| document.writeln(' <td><img class="btnImage" src="rte/images/post_button_image.gif" width="25" height="24" alt="Add Image" title="Add Image" onClick="AddImage(\'' + rte + '\')"></td>');<br><br>Da muss das... | 
																  | 
															 
															
																  | 
																  | 
														  
													 
												 | 
											 
										 
									 | 
									Sven
											Buhk
										
									 | 
									05.01.2004 14:07 | 
								 
							
		
			| 
								 |  
									
										
											
												   | 
												
													
														Re: Automatisch target="blank" und border="0"
													
													
														
															
																| Lösung:<br>var intBorder = 0;<br>var sAlttext = "irgendwas";<br><br>document.getElementById(rte).contentWindow.document.execCommand('InsertImage', false, imagePath + '" border="' + intBorder + '" alt="' +... | 
																  | 
															 
															
																  | 
																  | 
														  
													 
												 | 
											 
										 
									 | 
									G.
											Guest
										
									 | 
									25.03.2004 09:49 | 
								 
							
		
			| 
							 |   
							 | 
		
	
							Antworten
							
							
							Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!