Pēdējo stundu laikā izlasīju čupu materiālu, un tagad viss ir vienā ķīselī. Serverpuses, klientpuses, headerkontettaipi utt.
Uz servera atrodas SVG fails. SVG=XML. Pašlaik čakarējos ar tajā pašā wiki linkā doto W3C's SVG logo (nepārprast, fails ir fiziski uz "mana" servera, t.i., uz tā kur atrodas tālāk jautājumā ietvertais svgchakaretajs.html, viss notiek viena domēna ietvaros).
Vai ir iespējams klienta! pusē caur javascript nolasīt SVG saturu, izmainīt to, un klientam prezentēt izmainīto SVG?
Nav vajadzīgs (un nav arī pieejams) ActiveXObject un tātad arī, piem., Document.save(objTarget), metode (jāstrādā ir tikai uz webkita bāzētajiem pārlūkiem)
<script type="text/javascript">
// Variabļi
var xmlhttp;
var xmlDoc;
// Funkcija lai ielasītu SVG (t.i., XML)
function loadSVGXML(path) {
if (window.XMLHttpRequest) {
xmlhttp=new XMLHttpRequest();
xmlhttp.open("GET",path,false);
xmlhttp.send();
// XML DOM OBJECT
xmlDoc=xmlhttp.responseXML;
}
else {
alert("oops");
}
}
// Funkcija, kas rootnodei pievieno atribūtu
function setAttrInRootNode() {
var rootNode= xmlDoc.documentElement;
xmlDoc.documentElement.setAttribute('myAttrName', 'myAttrValue');
}
// Tests
function testIfset() {
rootNode= xmlDoc.documentElement;
document.write("Last attribute name: " + rootNode.attributes[rootNode.attributes.length-1].name + "<br />");
document.write("Last attribute value: " + rootNode.attributes[rootNode.attributes.length-1].nodeValue + "<br />");
}
loadSVGXML("SVG-logo.svg");
setAttrInRootNode();
//testIfset();
</script>
Ja iespējoj testIfset, redzams, ka xmlDoc objekts ir izmainīts. Vai tehnoloģija atļauj šo objektu tagad, vienārši sakot, pārvērst "tīrā" XML (kā piemērs kalpo- atvērt augstāk nolinkoto "W3C's SVG logo" un atvērt view source pārlūkprogrammā) un servēt klientam kā SVG (tātad content-type: image/svg+xml)?
Pieņemu, ka, piem., ar php un SimpleXML varētu viens divi, bet tieši javascript ir jautājums. Serveris ir "tikai", lai "padotu" failu.
Question
kroko
Labsvakars.
Pēdējo stundu laikā izlasīju čupu materiālu, un tagad viss ir vienā ķīselī. Serverpuses, klientpuses, headerkontettaipi utt.
Uz servera atrodas SVG fails. SVG=XML. Pašlaik čakarējos ar tajā pašā wiki linkā doto W3C's SVG logo (nepārprast, fails ir fiziski uz "mana" servera, t.i., uz tā kur atrodas tālāk jautājumā ietvertais svgchakaretajs.html, viss notiek viena domēna ietvaros).
Vai ir iespējams klienta! pusē caur javascript nolasīt SVG saturu, izmainīt to, un klientam prezentēt izmainīto SVG?
Nav vajadzīgs (un nav arī pieejams) ActiveXObject un tātad arī, piem., Document.save(objTarget), metode (jāstrādā ir tikai uz webkita bāzētajiem pārlūkiem)
Tātad, ja oriģinālais SVG ir šāds
SVG-logo.svg
tad vēlos iegūt
Pašlaik ir šādi
Ja iespējoj testIfset, redzams, ka xmlDoc objekts ir izmainīts. Vai tehnoloģija atļauj šo objektu tagad, vienārši sakot, pārvērst "tīrā" XML (kā piemērs kalpo- atvērt augstāk nolinkoto "W3C's SVG logo" un atvērt view source pārlūkprogrammā) un servēt klientam kā SVG (tātad content-type: image/svg+xml)?
Pieņemu, ka, piem., ar php un SimpleXML varētu viens divi, bet tieši javascript ir jautājums. Serveris ir "tikai", lai "padotu" failu.
Liels paldies.
kroko
Edited by krokoLink to comment
Share on other sites
1 answer to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.