marți, 30 aprilie 2013

HTML5 - puterea interfetelor


Webul reprezinta platforma pentru toate tipurile de dispozitive, iar prin API-urile din HTML5, avem posibilitatea sa cream lucruri despre care nu am crezut ca ar fi realizabile.

Camera
Desi WebRTC(http://www.webrtc.org/) evolueaza, primul pas fiind facut prin accesul la camera foto a dispozitivului. Implementat in Firefox si Chrome pe Android permite utilizatorului sa faca clic pe un buton, sa-si faca o fotografie si sa o partajeze direct cu pagina web:
<input type="file" id="take-picture" accept="image/*">


luni, 29 aprilie 2013

Lista distributiilor linux pentru emisie radio pe internet

Linux is new anymore, there are many custom Linux operating system that was designed for ham radio operators. Here are the list of famous Linux operating system for ham radio usage 1. KB1OIQ - Andy's Ham Radio Linux DVD - This is a remastered version of Ubuntu Linux. As of version 13, there are 32-bit and 64-bit versions available. 2. hamOS - A Debian based Live and Installable operating system for radio amateurs. hamOS contains many preinstalled ham radio applications as well as a custom menu. This respin is geared toward the newer linux user. hamOS uses the lightweight LXDE desktop environment and is therefore suitable for older hardware. Check out the GetExtras folder on the desktop to run some custom scripts that will automatically grab flash, codecs, and other non-libre software. 3. Ar-knoppix 4. Harv's Hamshack Hack 5. Digipup - based on puppylinux (lightweight linux distribution) 6. Shackbox - Shackbox provide linux AND windows software like the famous ham radio deluxe, trunking software and a lot of other software related to electronics, antenna design and else. 7. Hamux - CentOS based repository with ham radio software. However, you can choose any linux distro you like and install any ham radio applications that you desired. Since linux is opensource operating system, you can hack the source to suit your taste. Google, Yahoo also powered by linux operating system and small hardware such as switch, routers, acces point also powered by linux nowadays. Most of websites running on linux webservers. Happy Hamlinux-ing!

Citirea elementelor CSS in jQuery


Citirea elementelor CSS

Proprietatile CSS ale unui element HTML se pot citi /prelua cu urmatoarea sintaxa:

$('selector').css('proprietate_css');
- selector - reprezinta un element HTML.
- proprietate_css - proprietatea CSS ce va fi citita.

Preluarea culorii de background dintr-un element div.
<!DOCTYPE html>
<html>
<head>
<style>
div { width:60px; height:60px; margin:5px; float:left; }
</style>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body>
<span id="result">&nbsp;</span>
<div style="background-color:blue;"></div>
<div style="background-color:rgb(15,99,30);"></div>
<div style="background-color:#123456;"></div>
<div style="background-color:#f11;"></div>
<script>
$("div").click(function () {
var color = $(this).css("background-color");
$("#result").html("That div is <span style='color:" +
                   color + ";'>" + color + "</span>.");
});
</script>
</body>
</html>


Preluarea valorilor width, height, text color si background color la apasarea unui element div.
<!DOCTYPE html>
<html>
<head>
<style>
div { height: 50px; margin: 5px; padding: 5px; float: left; }
#box1 { width: 50px; color: yellow; background-color: blue; }
#box2 { width: 80px; color: rgb(255,255,255); background-color: rgb(15,99,30); }
#box3 { width: 40px; color: #fcc; background-color: #123456; }
#box4 { width: 70px; background-color: #f11; }
</style>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body>
<p id="result">&nbsp;</p>
<div id="box1">1</div>
<div id="box2">2</div>
<div id="box3">3</div>
<div id="box4">4</div>
<script>
$("div").click(function () {
var html = ["The clicked div has the following styles:"];
var styleProps = $(this).css( ["width", "height", "color", "background-color"] );
$.each( styleProps, function( prop, value ) {
  html.push( prop + ": " + value );
});
$( "#result" ).html( html.join( "<br>" ) );
});
</script>
</body>
</html>


Schimbarea culorii unui text la trecerea mouse-ului peste el.
<!DOCTYPE html>
<html>
<head>
<style>
p { color:blue; width:200px; font-size:14px; }
</style>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body>
<p>Just roll the mouse over me.</p>
<p>Or me to see a color change.</p>
<script>
$("p").on( "mouseover", function() {
  $(this).css( "color", "red" );
});
</script>
</body>
</html>

duminică, 28 aprilie 2013

Programe JavaScript

Primul program pe care trebuie sa-l scrieti, in continuarea lungii traditii a programarii, este "Hello World!".


<!DOCTYPE html>
<html>
<head>
<title>Salut Romania!</title>
</head>
<body>
<script type="text/javascript" >
document.write("Hello World!")
</script>
</body>
</html>

Acesta este codul html si javascript care va afisa mesajul "Hello World!". Acesta este un mesaj destul de lipsit de stralucire de aceea o sa-i adaugam mesajului o caseta de dialog de avertizare care sa afiseze textul.


<!DOCTYPE html>
<html>
<head>
<title>Caseta de dialog Hello World!</title>
</head>
<body>
<script type="text/javascript" >
<!--
alert('Hello World!')
-->
</script>
</body>
</html>


JavaScript opereaza cu sase tipuri de valori: numere, siruri, valori booleene, null, obiecte si functii. In html toate volorile sunt interpretate drept text.
De aici puteti descarca fisierele cu codul pentru programele de mai sus: https://code.google.com/p/mhcrnl-javascript/ apoi sectiunea Downloads > fisierul.tar.gz dupa ce il dezarhivati aveti codul.

Calculul TVA este realizat cu urmatorul cod:

<!DOCTYPE html>
<html>
<head>
<title>Preluarea unei valori </title>
</head>
<body>
<script type="text/javascript" >
<!--
var pret = 0
pret = prompt('Introduceti pretul.', ' ')
var tva = (pret * 0.24)
alert('Tva este: ' + tva)
-->
</script>
</body>
</html>

Operatorul de incrementare si diferite forme de utilizare: ++a, a++, --a, a-- :

<!DOCTYPE html>
<html>
<head>
<title>Operatorul de incrementare</title>
</head>
<body>
<script type="text/javascript">
var a =5
++a
alert('Valoarea lui a este: ' + a)
</script>
</body>
</html>

<!DOCTYPE html>
<html>
<head>
<title>Operatorul de incrementare</title>
</head>
<body>
<script type="text/javascript">
var a = 5
var b
b = ++a
alert('valoarea lui b = ++a este ' +a)
a = 5
b = a++
alert('valoarea lui b = a++ este ' +a)
</script>
</body>
</html>


Aici se va afisa data

Click the button to demonstrate the prompt box.

jQuery - Librarie JavaScript


    jQuery este o platformă de dezvoltare JavaScript, concepută pentru a ușura și îmbunătăți procese precum traversarea arborelui DOM în HTML, managementul inter-browser al evenimentelor, animații și cereri tip AJAX. jQuery a fost gândit să fie cât mai mic posibil, disponibil în toate versiunile de browsere importante existente, și să respecte filosofia "Unobtrusive JavaScript". Biblioteca a fost lansată in 2006 de către John Resig.
jQuery este o librarie JavaScript


jQuery e centrat pe lucrul si manipularea elementelor HTML si CSS in pagina web. Are de asemenea utilitati Ajax pentru transmitere de date la server, functii pt. lucru cu obiecte, array si evenimente.
Aproape toate scripturile facute cu jQuery functioneaza la fel in principalele navigatoare web.

Ca sa lucrati cu jQuery trebuie sa includeti libraria de functii in pagina HTML, ca orice fisier cu cod JavaScript. Pentru aceasta operatie exista doua modalitati de includere: 

  1. se descarca libraria jQuery si se salveaza pe server cu extensia ".js", apoi se introduce in documentul HTML prin sintaxa <script type="text/javascript" src="jquery_file.js"></script>
  2. o alta modalitate este de a include libraria prin Google:  <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
Acestea fiind spuse primul program pe care il scriem in orice limbaj de programare este "Hello World!" :
<html>
<head>
<title>jQuery Hello World</title>
 <!-- inlocuiti in src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" este versiunea actuala, iar in HTML 5 type="" nu mai este necesar -->
<script type="text/javascript" src="jquery-1.2.6.min.js"></script>
 
</head>
 
<body>
 
<script type="text/javascript">
 
$(document).ready(function(){
 $("#msgid").html("This is Hello World by JQuery");
});
 
</script>
 
This is Hello World by HTML
 
<div id="msgid">
</div>
 
</body>

Acest text este colorat

If you click on me, I will disappear.
Click me away!
Click me too!

Resurse:

Hello World

sâmbătă, 27 aprilie 2013

Introducere in XML


Introducere in XML




  XML este un limbaj de marcare puternic care permite aplicatiilor Ajax sa transfere si sa prelucreze informatii structurate, complexe. In acest tutorial vom discuta elementele de baza ale crearii si utilizarii documentelor XML.

Prezentare XML

Oricine a realizat orice fel de marcare HTML va fi deja oarecum familiarizat cu natura codului XML(eXtensible Markup Language). Documentele XML (http://www.w3schools.com/xml/default.asp) pot fi utilizate in toate tipurile de aplicatii de stocare si de schomb de date, mergand de la stocarea documentelor si prelucrarea lor si pana la roluri indeplinite traditional de catre programele de baze de date.

Elemente de baza XML

XML este un limbaj de marcare care permite ca datele sa fie stocate si transmise intr-o maniera structurata, ierarhica. Elementele XML pot fi definite in interiorul unui document in functie de datele care sunt scrise acolo. Etichetele XML pot fi definite oricum doriti, permitandu-va sa scrieti orice tip  de date.

<?xml version="1.0"?>
<note>
   <to>Tove</to>
   <from>Jani</from>
   <heading>Reminder</heading>
   <body>Don't forget me this weekend!</body>
</note>

Dupa cum puteti observa citirea datelor este foarte usoara chiar si pentru un cititor uman.

Sugestie! XML folosete aceiasi sintaxa ca si HTML pentru afisarea comentariilor. Orice informatie care incepe cu sirul de caractere <!-- si se termina cu sirul --> va fi ignorata.

<!-- Acesta este un comentariu -->


Structura unui document XML

Structura permisa pentru un document XML are un singur element obligatoriu  in exemplul de mai sus este <note>.

Declaratia tipului de document


<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE note SYSTEM "Note.dtd">
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

Prologul documentului este optional dar daca exista acesta trebuie sa fie primul lucru din document. Inaintea sa nu sunt permise nici macar spatii goale.

<?xml version="1.0" encoding="ISO-8859-1"?>

Declaratia optionala a tipului de document este o instructiune care specifica structura acceptata pentru un document XML.

<!DOCTYPE note SYSTEM "Note.dtd">

Aceasta declaratie precizeaza ca elementul document se va numi note si ca definitiile de structura  a documentului pot fi gasite intr-un fisier extern “Note.dtd” care probabil contine ceva asemanator:

<!DOCTYPE note
[
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>

Extragerea datelor dintr-un document XML

Acest exemplu este interpretat de toate browser-ele si este pagina in html.

<html>
<body>
<h1>W3Schools Internal Note</h1>
<div>
<b>To:</b> <span id="to"></span><br />
<b>From:</b> <span id="from"></span><br />
<b>Message:</b> <span id="message"></span>
</div>


<script>
if (window.XMLHttpRequest)
 {// code for IE7+, Firefox, Chrome, Opera, Safari
 xmlhttp=new XMLHttpRequest();
 }
else
 {// code for IE6, IE5
 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
 }
xmlhttp.open("GET","note.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;


document.getElementById("to").innerHTML=
xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;
document.getElementById("from").innerHTML=
xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;
document.getElementById("message").innerHTML=
xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;
</script>


</body>
</html>

Extragerea datelor se face din note.xml si care are codul de mai jos:

<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>


Bibliografie