Dev.Opera 2011

2013 2012 2011 2010 2009 2008 2007 2006

Love Your Devices: Adaptive Web Design With Media Queries, Viewport and More

December 24, 2011 · by Chris Mills

It's time again to reflect on happiness and well being: that of yourselves and the members of the public who consume the web content and services you create. Today we are going to talk about getting more satisfaction from battery-powered devices...

An Introduction to WebGL — Part 2: Porting 3D Graphics

December 24, 2011 · by Luz Caballero

In the first part of our WebGL series, we walked through a very simple introduction to WebGL, explaining what it is and how it can be used, and dissected a simple code example. From here on in, we will start looking at WebGL in more detail, focussing on…

opera.contexts.toolbar.createItem()

December 16, 2011 · by Opera Software

This method creates a Button from a given property object. Note: The item can only be used within the ToolbarContext that it is created in.

Christmas at Opera Labs: 64-bit Opera, and out-of-process plug-ins

December 15, 2011 · by Chris Mills

As the snow settles on the ground, and the elves draw close to finishing construction of all their toy orders, it may not surprise you to learn that Opera's little helpers have also been very busy, adding exciting new innovations to our desktop browser!

Better error handling with window.onerror

December 14, 2011 · by Karl Dubost

onerror is a DOM event handler. It is started when an error occurs during object loading. While window.onerror is an event handler, there is no error event being fired: instead, when there is an uncaught exception or compile-time error, the window.onerror…

DOM access control using cross-origin resource sharing

December 14, 2011 · by Tiffany Brown

Same-origin policies are a central security concept of modern browsers. In a web context, they prevent a script hosted at one origin — meaning the same protocol, domain name, and port — from reading from or writing to the DOM of another.

Badge.backgroundColor

December 6, 2011 · by Opera Software

The background color for the badge; accepts hexadecimal notation, RGBA, and color name values (e.g., #afafaf, (200, 200, 200, 0), blue).

Badge.color

December 6, 2011 · by Opera Software

The color of the text of the badge; accepts hexadecimal notation, RGBA and color name values (e.g., #afafaf, (200, 200, 200, 0), blue).

Badge.display

December 6, 2011 · by Opera Software

Determines whether the badge should be displayed; allowed values: "block" and "none"; it is set to "none" by default.

Badge.textContent

December 6, 2011 · by Opera Software

The text that will be shown in the badge; this may overflow the visual space provided which is usually around four characters.

Button & Badge

December 6, 2011 · by Opera Software

The browser toolbar API is part of the background process API. This part deals with the browser toolbar context, which allows the creation and manipulation of buttons, badges, and popup windows.

Button.addEventListener()

December 6, 2011 · by Opera Software

void addEventListener(<DOMString> type, eventListener, <boolean> useCapture)

Button.disabled

December 6, 2011 · by Opera Software

This property indicates if the Button is disabled. By default, it is set to false (meaning the button is enabled).

Button.icon

December 6, 2011 · by Opera Software

This property represents the icon for the Button. It can reference the relative path to a data URI, an image located inside the package, or it can point to an external URL.

Button.onclick

December 6, 2011 · by Opera Software

This property represents the function executed when the button is clicked.

Button.popup

December 6, 2011 · by Opera Software

This property represents the Popup for the Button. Calling Button.popup will return the popup object. You can also get and set the popup properties directly through the Button object (e.g. to set the popup width you can do 'button.popup.width = 300')

Button.removeEventListener()

December 6, 2011 · by Opera Software

This article is licensed under a Creative Commons Attribution 3.0 Unported license.

Button.title

December 6, 2011 · by Opera Software

This property represents the title of the button (which is also visible as a tooltip when hovering over the button with a mouse).

access element

December 6, 2011 · by Opera Software

The <access> element allows authors permission to access external web resources. If the background process needs anything to load from outside the extension (like a web resource) then it needs to be specified in this element. If the extension needs to share…

author element

December 6, 2011 · by Opera Software

The <author> element is used to provide details regarding the author of the extension. The following attributes are associated with it.

content element

December 6, 2011 · by Opera Software

The <content> element is used to define a custom start file for the extension. The following attributes are associated with it.

description element

December 6, 2011 · by Opera Software

The <description> provides a description of what the extension is supposed to do.

dir attribute

December 6, 2011 · by Opera Software

The dir attribute defines the direction of the language used by an element with the following values:

feature element

December 6, 2011 · by Opera Software

The <feature> element declares the use of certain features by the extension, such as being able to display content in speed dial.

icon element

December 6, 2011 · by Opera Software

If any .svg, .ico, .png, .gif or .jpg file with the name "icon" is present in the extension package (for example: 'icon.png'), then that is used as the icon for the extension by default.

license element

December 6, 2011 · by Opera Software

The <license> element mentions the software license. The following attributes are associated with it.

name element

December 6, 2011 · by Opera Software

This article is licensed under a Creative Commons Attribution 3.0 Unported license.

preference element

December 6, 2011 · by Opera Software

The <preference> element allows for preferences to be declared by the developer. Using this, a key-value pair is stored in a persistent manner and is initiated the first time the extension is started. Preferences can then be accessed at runtime via the…

span element

December 6, 2011 · by Opera Software

The <span> element serves as a wrapper for text content, usually for the purpose of internationalization. The following attributes are associated with it.

widget element

December 6, 2011 · by Opera Software

The <widget> element is the container element under which the rest of the elements of the config.xml file go. The following attributes are associated with it.

config.xml

December 6, 2011 · by Opera Software

The mandatory config.xml file gives the Opera browser relevant information about an Opera extension, such as the name, description and version.

xml:lang attribute

December 6, 2011 · by Opera Software

The xml:lang attribute specifies the language of the contained text in the element. This attribute is optional and should only be used for localization purposes.

Injected scripts

December 6, 2011 · by Opera Software

You can add JavaScript to a website using "injected scripts". These are normal JavaScript files located inside the "includes" folder in the extension. Opera will execute the given scripts on either all pages, or certain sites and domains they have been…

Messaging

December 6, 2011 · by Opera Software

Communicating between different parts of an extension is done by using either the background process or the messaging API.

opera.extension.addEventListener()

December 6, 2011 · by Opera Software

This method is used to listen for events being dispatched. For opera.extension, this inlcudes 'connect', 'message', and 'disconnect'.

opera.extension.bgProcess

December 6, 2011 · by Opera Software

A reference to the window object of the background process. The bgProcess object can be used to set and get variables and functions between the background script and a popup window or preferences page. Note that it cannot be used in injected scripts for…

opera.extension.broadcastMessage()

December 6, 2011 · by Opera Software

This method is used to broadcast data to all connected environments associated with the extension, such as the preferences page, popup window and injected scripts.

opera.extension.onconnect

December 6, 2011 · by Opera Software

This event listener is invoked when an injected script, popup, or preferences environment is created that enables communication. The event's source (event.source) is a messagePort to the connecting environment. The following function will execute when a…

opera.extension.ondisconnect

December 6, 2011 · by Opera Software

This event listener is invoked when an injected script, popup or preferences environment is destroyed and communication is disabled. The event's source is a messagePort to the disconnecting environment, used only for comparative purposes. The port itself may…

opera.extension.onmessage

December 6, 2011 · by Opera Software

This event listener is invoked when a message is received from an injected script, popup or preferences page. The event's source is a messagePort to the connecting environment.

opera.extension.removeEventListener()

December 6, 2011 · by Opera Software

void removeEventListener (<DOMString> type, eventListerner, <boolean> useCapture)

opera.addEventListener()

December 6, 2011 · by Opera Software

Registers a listener for an event specific to the injected script side. The listener needs to use the standard EventListener interface - a function with an Event object as its first argment, e.g. var myListener = function(event) {alert(event.type)};

opera.defineMagicFunction()

December 6, 2011 · by Opera Software

This method can be used to override global functions defined by regular scripts in a page.

opera.defineMagicVariable()

December 6, 2011 · by Opera Software

This method can be used by to override global variables defined by regular scripts in a page.

opera.postError()

December 6, 2011 · by Opera Software

Makes a given text string appear in the Error Console. Helpful for debugging.

opera.removeEventListener()

December 6, 2011 · by Opera Software

void removeEventListener (<DOMString> type, <EventListener> listener, UseCapture)

Popup

December 6, 2011 · by Opera Software

An extension's toolbar button can easily be programmed to open a popup window. This popup window displays the contents of an HTML file and is closed by the user clicking again on the toolbar button. There are a few attributes and methods specific to this…

Popup.height

December 6, 2011 · by Opera Software

The height of the popup window; by default, the height is 300px. Note that this attribute is set in the background script as part of the ToolbarUIItemProperties object. See the Browser Toolbar guide.

Popup.href

December 6, 2011 · by Opera Software

A URL reference to the page to pop up; this page will pop up when the user clicks on an ExtensionUIItem; editing the href attribute while the popup is open will close the popup. Note that this attribute is set in the background script as part of the…

opera.extension.postMessage()

December 6, 2011 · by Opera Software

This method is used to post a message to the BackgroundProcess of the extension.

Popup.width

December 6, 2011 · by Opera Software

The width of the popup window; by default, the width is 300px. Note that this attribute is set in the background script as part of the ToolbarUIItemProperties object. See the Browser Toolbar guide.

Speed Dial

December 6, 2011 · by Opera Software

The Speed Dial page is the "start page" that is displayed every time you open a new tab in Opera.

Speed Dial feature element

December 6, 2011 · by Opera Software

A feature request by the extension to have its content displayed in a Speed Dial cell. It requires one parameter, the url parameter, as a param child element. The feature element is defined in the W3C Widgets specification.

Speed Dial param element

December 6, 2011 · by Opera Software

The Speed Dial feature request takes one parameter whose name attribute value is the string url and whose value attribute value is a valid non-empty URL potentially surrounded by spaces. The param element is defined in the W3C Widgets specification.

opera.contexts.speeddial.title

December 6, 2011 · by Opera Software

Represents the human-readable title given to a Speed Dial cell. If not specified, the default value is the extension's name (specified in the config.xml's name element).

opera.contexts.speeddial.url

December 6, 2011 · by Opera Software

Represents the target URL of the Speed Dial cell when clicked or otherwise activated. This can be either an external page or a local file within the extension. If not specified, the default value is the feature request's param element whose name attribute is…

Speed Dial viewmodes attribute

December 6, 2011 · by Opera Software

Indicates whether the extension should be run in a minimized state by using a value of minimized. It is not mandatory that the minimized view mode be explicitly used through CSS in the background process—so long as the extension declares that the minimized…

opera.contexts.toolbar.addItem()

December 6, 2011 · by Opera Software

This method adds a Button to the toolbar in the browser. To create a Button see the createItem method.

opera.contexts.toolbar.length

December 6, 2011 · by Opera Software

This attribute contains the number of UI items held by the ToolbarContext. Note: The ToolbarContext is currently restricted to a maximum of one UI item, so this will be either 1 or 0.

opera.contexts.toolbar.removeItem()

December 6, 2011 · by Opera Software

This method removes a given Button from the toolbar in the browser.

URL filter

December 6, 2011 · by Opera Software

The URL Filter API for Opera extensions defines a DOM interface that allows extensions to add temporary rules to Opera's native content blocker. Rules added through this API are associated with an extension and apply as long as the extension is enabled. Once…

opera.extension.urlfilter.block.add()

December 6, 2011 · by Opera Software

This article is licensed under a Creative Commons Attribution 3.0 Unported license.

opera.extension.urlfilter.block.remove()

December 6, 2011 · by Opera Software

This article is licensed under a Creative Commons Attribution 3.0 Unported license.

widget.author

December 6, 2011 · by Opera Software

This readonly attribute corresponds to the author element in the configuration document, if one was declared. Otherwise, it will return an empty string.

widget.authorEmail

December 6, 2011 · by Opera Software

This readonly attribute corresponds to the author element's email attribute in the configuration document, if one was declared. Otherwise, it will return an empty string.

widget.authorHref

December 6, 2011 · by Opera Software

This readonly attribute corresponds to the author element's href attribute in the configuration document, if one was declared. Otherwise, it will return an empty string.

widget.description

December 6, 2011 · by Opera Software

This readonly attribute corresponds to the description element in the configuration document, if one was declared. Otherwise, it will return an empty string.

widget.id

December 6, 2011 · by Opera Software

This readonly attribute corresponds to the widget element's id attribute in the configuration document, if one was declared. Otherwise, it will return an empty string.

widget.name

December 6, 2011 · by Opera Software

This readonly attribute corresponds to the name element in the configuration document, if one was declared. Otherwise, it will return an empty string.

Widget object

December 6, 2011 · by Opera Software

The widget object provides functionality for accessing an extension's metadata and persistently-stored data. It can be accessed from any of the extension's environments, such as background process, popup window, injected script or preferences page. Note that…

widget.preferences

December 6, 2011 · by Opera Software

This readonly attribute implements a HTML5 DOM Storage interface that allows read/write access to the name and values of any preference elements declared in the configuration document. Read more about how to make use of widget.preferences in the options page…

widget.shortName

December 6, 2011 · by Opera Software

This readonly attribute corresponds to the name element's short attribute in the configuration document, if one was declared. Otherwise, it will return an empty string.

widget.version

December 6, 2011 · by Opera Software

This readonly attribute corresponds to the widget element's version attribute in the configuration document, if one was declared. Otherwise, it will return an empty string.

HTML5 custom protocol and content handlers

December 6, 2011 · by Mike Taylor

Since the Opera 11.60 snapshot release, we have had support for the HTML5 custom scheme and content handlers. Their purpose is pretty simple. Your site can offer to handle certain MIME types or schemes (aka “protocols”) and the user has the option of opting…

Introducing ECMAScript 5.1

December 6, 2011 · by Mike Taylor

ECMAScript 5.1 (or just ES5) is the latest revision of the ECMAScript standard — the specification that JavaScript is based on. Similar in spirit to the HTML5 specification process, ES5 standardizes existing JavaScript implementations in conjunction with…

Love your devices: adaptive web design with media queries, viewport and more

November 24, 2011 · by Chris Mills

It's time again to reflect on happiness and well being: that of yourselves and the members of the public who consume the web content and services you create. Today we are going to talk about getting more satisfaction from battery-powered devices...

Porting 3D graphics to the web — WebGL intro part 2

November 24, 2011 · by Luz Caballero

In the first part of our WebGL series, we walked through a very simple introduction to WebGL, explaining what it is and how it can be used, and dissected a simple code example. From here on in, we will start looking at WebGL in more detail, focussing on…

Opera for Devices: Out of Memory System

November 21, 2011 · by Opera Software

Opera for Devices provides powerful mechanisms to strictly limit the heap usage of Opera. Memory is an expensive commodity on many devices and different programs may compete for the limited resources with unpredictable consequences. With the Out of Memory…

Opera TV Emulator: Tools for content developers

November 21, 2011 · by Opera Software

The Opera TV Emulator may be configured via the Settings button on the web remote control. You can set the desired options using the tabs and settings listed below:

Opera TV Emulator: Getting started

November 21, 2011 · by Opera Software

The Opera TV Emulator is provided via a Linux system image that should be launched using a VirtualBox virtual machine. This ensures a test environment for web developers that is as close to a real device system as possible. VirtualBox works on the most common…

Opera TV Emulator: Overview & support

November 21, 2011 · by Opera Software

The Opera TV Emulator allows any web developer to develop content for TVs and other devices without access to a physical device. It runs on a standard Linux PC and makes it easy to develop and debug applications for all Opera enabled devices. The Opera TV…

Opera TV Emulator: User Guide

November 21, 2011 · by Opera Software

If you have questions or problems that are not covered in this documentation, please refer to the support page for information on how to contact us.

Building a web mapping application with Pergola and Polymaps

November 16, 2011 · by Domenico Strazzullo

Mapping applications are very popular, and it is easy to embed a simple map on a page using something like the Google Maps API. However, anyone who has tried to create a more complex mapping application will know that it can take a considerable investment in…

Operas leichtgewichtige Themes

November 4, 2011 · by Nico

Opera 12 enthält viele Verbesserungen, inklusive Updates an Operas Skinning-System. Aus diesem Grund haben wir Skins in Themes umbenannt. Es gibt ein neues leichtgewichtiges System (intern wird es Personas genannt), welches auf Operas Standard-Theme aufbaut…

Opera Mobile Labs 11.5 for MeeGo netbooks and tablets

November 2, 2011 · by mymos

Since releasing Opera Mobile 11.5 for Android earlier this month, we have been working on an updated Labs release for MeeGo netbooks and tablets running Intel Atom processors.

Opera エクステンションの公開ガイドライン

October 28, 2011 · by Opera Software

図 1: 公開に至るまでのプロセスの概略 - 開発者が拡張機能を作成し、Opera エクステンションリストにアクセスして提出する。拡張機能の管理者が提出されたものを審査した後、公開に至る。不採用の場合は開発者に返却し、改良を加えた後に再提出するように伝える。

Playing With HTML5 Video & getUserMedia Support

October 19, 2011 · by Daniel Davis

You may have seen the impressive HTML5 experiment created by Sean Christmann involving a video that explodes at the click of a mouse. If not, we'd recommend that you have a look:

More fun using the Web, with getUserMedia and native pages

October 19, 2011 · by Chris Mills

Another Opera labs release is upon us, esteemed friends in the land of Web! This time we are making available a very exciting build indeed, with support for both the getUserMedia method, enabling us to make use of video input from a user’s web cam, and native…

Opera Reader: a new way to read the Web!

October 19, 2011 · by Chris Mills, Håkon Wium Lie

Around 2000 years ago, the Romans developed the codex. Different from scrolls — the previously accepted literary format — the codex had pages that were bound together into what we today call books.

Playing with HTML5 video and getUserMedia support

October 19, 2011 · by Daniel Davis

You may have seen the impressive HTML5 experiment created by Sean Christmann involving a video that explodes at the click of a mouse. If not, we'd recommend that you have a look:

An Introduction to WebGL — Part 1

October 13, 2011 · by Luz Caballero

This is the first in our series of articles about WebGL. The objective of this series is to provide the information and resources you’ll need to get started learning WebGL. In this piece, we will discuss how WebGL works, what you need to create WebGL…

An introduction to WebGL

October 13, 2011 · by Luz Caballero

This is the first in our series of articles about WebGL. The objective of this series is to provide the information and resources you'll need to get started learning WebGL. In this piece, we will discuss how WebGL works, what you need to create WebGL…

Opera's lightweight themes

October 13, 2011 · by Chris Mills

Opera 12 brings us many improvements, including updates to the Opera skinning system. For a start, the updates are so extensive that we have renamed skins to themes. There is a new lightweight system (internally called personas), which sits on top of the…

CSS3 radial gradients

October 7, 2011 · by Chris Mills

Gradients are much-used on web sites: if you want to liven up pretty much any UI feature (buttons, panels, headers, etc.) you can use a gradient, although you should use them sparingly to avoid the "web site christmas tree effect"™. Traditionally we used CSS…

Arquitetura da Informação – Planejando um web site

September 28, 2011 · by André Buzzo

Tradicionalmente, planejar um web site (ou qualquer outro projeto) é uma tarefa pouco estressante. Todos têm uma opinião sobre como deve ser a construção de um site, e com certeza, as opiniões serão contraditórias se comparadas à de terceiros. Seu primeiro…

Opera Mini Request Headers

August 29, 2011 · by DevRel Team

Opera Mini uses a number of custom, unregistered HTTP headers. Most of these are specific to Mini, and are sent in addition to the regular HTTP headers sent by Opera on any platform. The purpose of these headers is to give site owners information about the…

Introduction au Web Standards Curriculum

August 24, 2011 · by Chris Mills

Tous les auteurs qui ont contribué à ce curriculum sont des passionnés qui croient fermement aux standards du Web. Nous voulons tous faire de notre mieux pour rendre le Web meilleur et je suis convaincu que cela passe par l'apprentissage et l'enseignement,…

Opera エクステンション:ボタン、バッヂ、ポップアップ

August 11, 2011 · by t.ashula

この文書ではツールバー上のボタンの作り方やその構成について端から端まで全て解説していきます。ツールバー上のアイテムはバックグラウンドプロセスの一部として定義したり操作したりします。挿入されたスクリプトやポップアップから直接定義したり操作したりはできません。ボタンやバッヂ、ポップアップは opera.coontexts.toolbar に制御されますがこれについての詳細は、Browser Toolbar API Guide を参照してください。

Opera のスキン パート 1: 入門

August 11, 2011 · by Makoto Mizukami

この翻訳文は、 数多世界氏の翻訳を本人の許諾の下一部編集し、また本人の依頼の元私名義で Dev.Opera に掲載するものです。This translated document was originally written by amatanoyo. I've been requested to post this to Dev.Opera credited to me, with permission to edit the original translation.

Opera エクステンションでの cookie 共有

August 10, 2011 · by Opera Software

デスクトップ向け Opera 11.50 では、エクステンションが cookie をブラウザと共有できる機能を導入しました。「クッキー」と言うと、ついついミルクとビスケットの話に脱線しそうになりますが、今回は、この新しい機能が、より使いやすいエクステンションを作成するにあたって、どのようなサポートを行うのかを見ていきましょう。また、この機能は開発者にとっても扱いやすいものであるということも付け加えておきます。

Microdata & the microdata DOM API

August 10, 2011 · by Chris Mills

One of the main problems HTML5 set out to solve was consistency (and therefore machine readability) of markup, evidenced by the introduction of standard semantic elements such as <header>, <nav> and <figure>. This is all well and good, but there are times…

6: Architecture de l’information – Penser l’organisation d’un site web

August 4, 2011 · by Laurent Roy, Stephane Deschamps

De manière générale, réfléchir à l’organisation d’un site web (ou de n’importe quel projet) peut être une étape un peu stressante. Tout le monde a un avis sur la façon dont doit être construit le site, et souvent les opinions divergent entre elles. Votre…

Tweaking spatial navigation for TV browsing

July 25, 2011 · by Daniel Davis

One of the biggest challenges designing content for TVs is navigation. Not only are there several different methods that can be used to navigate a page, but none of them provide the perfect blend of convenience and practicality, at least not yet. At the time…

100% Ragnarök’n’roll

July 21, 2011 · by Bruce Lawson

In February, Stig showed us the first Labs build of Ragnarök, Opera’s HTML5 parser . Here’s a new build: note, this is not an Opera Next build but a Labs build with a different profile, different UA string, and outside of the Next auto-update cycle.

Introducing the HTML5 History API

June 28, 2011 · by Mike Taylor, Chris Mills

Before the advent of HTML5, one thing that we — as web developers — were not able to control and manipulate is the session history of a particular browsing context. Not without incurring page reloads or relying on location.hash workarounds. This is all set to…

Cookie-sharing in Opera extensions

June 24, 2011 · by Daniel Davis

Our upcoming Opera 11.50 for desktop introduces the ability for extensions to share cookies with the browser. As tempting as it is to dive into puns about milk and biscuits, we're going to look at how this new feature can help you make extensions that are…

An Introduction to Datasets

May 31, 2011 · by Divya Manian

HTML5 includes a means to set custom attributes on elements using the data- prefix. Called data attributes, they can be scripted to define and store data as well as increase options for attribute selection when styling with CSS. You can use as many data…

Criando extensões para o Speed Dial do Opera

May 31, 2011 · by Victor Pencak

Em 2007 nós anunciamos o Speed Dial para o Mundo. O conceito mostrou ser bastante popular e acabou gerando implementações similares em navegadores concorrentes. Como estamos muito orgulhosos do resultado, que tipo de pais nós seríamos se não ajudássemos o…

Cara membuat ekstensi Speed Dial Opera

May 30, 2011 · by putri, Daniel Davis

Di tahun 2007 kami memperkenalkan fitur Panggilan Cepat atau yang lebih dikenal dengan Speed Dial kepada dunia. Konsep ini kemudian popular dan banyak ditemukan implementasi serupa di browser-browser lain. Tetapi selain berbangga hati, orang tua macam apa…

Opera Mobile Emulator for Desktop

May 25, 2011 · by Patrick H. Lauke, Chris Mills, Andreas Bovens

Making sure that your site looks great and works exactly as it should in mobile and tablet browsers can often be a tedious process — you typically need one or more physical devices, or some form of virtual machine emulating the whole operating system, and…

Opera Mobile 11 MeeGo ARM developer preview

May 24, 2011 · by Phillip

Opera Software continues our support of the MeeGo open source initiative ( http://labs.opera.com/news/2011/03/22/ ) with the release of a developer preview of Opera Mobile 11 for ARM-based devices.

Tạo phần mở rộng dành cho Speed Dial

May 19, 2011 · by SupValya, Ngọc Sơn

Vào năm 2007, Opera đã giới thiệu Speed Dial với toàn thể người dùng Opera. Ngày nay tính năng này đã rất phổ biến và hầu như các trình duyệt khác cũng có tính năng tương tự. Nhưng chúng tôi vẫn tự hào rằng, chúng ta sẽ không phải là những bậc làm cha làm mẹ…

!Opera extensions ‏قل مرحبا لـ

May 19, 2011 · by idev007

هذا المقالة تأخذك خلال الخطوات الأساسية لإنشاء أول إضافة لك (Extensions or Add-on). ستقوم بإنشاء زر (button) على شريط الأدوات لـ Opera، عندما يتم الضغط علية سيقوم بعرض نافذة منبثقة تحمل في داخلها الرسالة "!Hello World". الإضافات في Opera يتم كتابتها باستخدام…

Opera Speed Dial エクステンション(拡張機能)の作成

May 18, 2011 · by Opera Software

Opera が Speed Dial を導入し、世界に向けて発表したのは 2007 年に遡ります。発表当時、Speed Dial のコンセプトは極めて好評を博し、今では他のブラウザでも似たような機能が見かけられるようになりました。しかし、そのような誇るべき機能を発展させることなく、また新しいスキルを開発をせずに放っておくという手はありません。Opera 11.10 版においては、Speed Dial の視覚的な表示方法とユーザーエクスピリエンスを改善し、Speed Dial…

Creando Extensiones para el Acceso Rápido de Opera

May 15, 2011 · by Sandro Lenart, zbzm

En el 2007, presentamos al mundo: Acceso Rápido. La idea se volvió popular y hoy en día pueden ser encontradas implementaciones similares en otros navegadores. Pero estamos muy orgullosos, ¿qué clase de padres seríamos si no ayudáramos a nuestro “bebé” a…

Создание расширений для Speed Dial

May 9, 2011 · by George Drak

В 2007 году мы представили миру экспресс-панель. Сегодня вы можете найти реализации этого популярного концепта почти во всех ведущих браузерах. Но как бы мы этим не гордились, какими бы родителями мы были, если бы не помогали нашему детищу расти и открывать…

Opera Speed Dial Extensions erstellen

May 4, 2011 · by Nico

Damals, im Jahr 2007, stellten wir die Schnellwahl der Welt vor. Das Konzept erwies sich als sehr beliebt und ähnliche Ansätze können mittlerweile auch in anderen Browsern gefunden werden. Aber so stolz wir auch sind, was wären wir für Eltern, wenn wir…

如何建立一个快速拨号扩展插件

May 4, 2011 · by Zi Bin Cheah

2007年我们给大家带来了快速拨号。之后其他浏览器也陆续推出了这个功能。身为第一个推出快速拨号的浏览器,我们有义务继续提升这个功能。在Opera11.10版本,我们给快速拨号优化了显示和用户体验。同时也给程序员提供控制快速拨号网页的功能。在Opera11.50,我们推出了快速拨号插件。 程序员提供控制

Creating Opera Speed Dial Extensions

May 3, 2011 · by Daniel Davis

Back in 2007, we introduced Speed Dial to the world. The concept proved extremely popular and similar implementations can now be found in other browsers as well. But as proud as we are, what kind of parents would we be if we didn't help our baby to grow up…

CSS3 の object-fit と object-position プロパティ

May 3, 2011 · by Masataka Yakura

CSS でよくある問題に、やなどの置換要素のアスペクト比を制御するというものがあります。たとえば、アスペクト比の違うものが混ざってもそれが変形されないように、ページに画像を同じ大きさで並べたいという場合を考えてみましょう。画像を切り抜いたり無理やり変形させるよりも、アスペクト比を保ちながらリサイズし、レターボックス表示にするほうがずっとエレガントです。あるいは逆に、レターボックスを持つ HTML5 の <video>…

作成したサイトを Speed Dial 内で際立たせるには

April 26, 2011 · by Opera Software

デスクトップ版 Opera 11.10 以降では、コンテンツ作成者が Speed Dial 内でサイトをコントロールすることができるようになりました。Speed Dial はデフォルトでは Web サイトの画面の取り込みを行いますが、サイトの所有者はアイコンを特定したり、Speed Dial に特化した CSS やコンテンツを提供することができます。

Lassen Sie Ihre Seite in der Schnellwahl erstrahlen

April 21, 2011 · by Nico

Seit Version 11.10 erlaubt Opera Webseitenbetreibern die Kontrolle über das Aussehen ihrer Seite in der Schnellwahl. Standardmäßig verwendet die Schnellwahl einen Screenshot der Webseite. Doch jetzt ist es auch möglich, ein Icon zu definieren oder spezielles…

Accessing an Opera extension's background process

April 12, 2011 · by Daniel Davis

One of the trickiest areas of building an Opera extension is messaging—sending information from one part of the extension to another. For example, you may want to execute some code in the background process whenever a pop up window is opened, which would…

Creating multilingual extensions

April 12, 2011 · by Patrick H. Lauke

Authors who want to provide their extensions in different languages don't have to create separately packaged versions of their .oex file. Opera's extensions use the same packaging and configuration as W3C Widgets, which includes built-in mechanisms for…

Magic functions and variables

April 12, 2011 · by Hallvord R. M. Steen

Opera comes with two special methods of the opera object—window.opera.defineMagicFunction() and window.opera.defineMagicVariable(). These allow you to override global functions and variables defined on a web page, which is especially useful when you want to…

The W3C file API

April 12, 2011 · by Bruce Lawson

In Opera 11.10, partial support for the W3C File API makes its debut. This spec "provides an API for representing file objects in web applications, as well as programmatically selecting them and accessing their data". For example, you can upload files into…

让你的网站在Opera快速拨号中发光发亮吧

April 8, 2011 · by Electron Fang

一个用户如果把一个网站放进快速拨号中,通常,快速拨号会显示整个网站页面的缩略图。 可能大多数用户不以为然,但如果我是站长,一定会很不爽的,看下面这个多难看啊!

Haz brillar tu sitio en el Acceso Rápido de Opera

April 7, 2011 · by ZBZM

A partir de la versión 11.10, Opera para PC de escritorio permite a los desarrolladores de contenido controlar como lucirán sus sitios en el Acceso Rápido. Antes, por defecto, el Acceso Rápido utilizaba una captura de pantalla del sitio web, sin que este…

Penyempurnaan Speed Dial Opera

April 7, 2011 · by putri

Pada versi 11.10, Opera untuk komputer desktop mengijinkan pembuat konten untuk mengontrol tampilan Panggil Cepat dari situs mereka. Secara default, Panggil Cepat atau yang terkenal dengan sebutan Speed Dial menggunakan tampilan dari website yang tampak pada…

Выделите свой сайт в Экспресс-панели

April 7, 2011 · by Stepan Mednikov

Настольная версия браузера Opera, начиная с версии 11.10, позволяет владельцам сайтов определять, как их сайт будет отображаться в миниатюрах Экспресс-панели. По-умолчанию, для отображения используется скриншот целой веб-страницы. Теперь появилась возможность…

Sitenizi Hızlı Erişim için İyileştirin!

April 7, 2011 · by metude, greench

11.10 ile birlikte, Opera'nın masaüstü sürümü sitelerin Hızlı Erişim'de nasıl görüntüleneceğini belirlemeye izin veriyor. Varsayılan olarak, Hızlı Erişim web sitenin ekran görüntüsünü kullanıyor. Ama artık site yöneticileri, özel bir ikon, Hızlı Erişim'e özel…

Hay cho phép trang web của bạn tỏa sáng trên Speed Dial

April 7, 2011 · by SupValya, Ngọc Sơn

Với phiên bản 11.10, Opera cho máy tính để bàn cho phép người dùng có thể thỏa sức sáng tạo trong Speed Dial. Mặc định, Speed Dial sử dụng ảnh chụp màn hình của trang web. Nhưng bây giờ bạn có thể chỉ định một biểu tượng hoặc cung cấp CSS dành riêng cho Speed…

viewport メタタグと @viewport 規則

March 31, 2011 · by Masataka Yakura

Opera のモバイル製品ではずいぶん昔から viewport メタタグをサポートしています。Opera Mobile 11 になって viewport 実装はより堅牢なものになり、また、異なる画面密度に対応する新しいメカニズムもサポートしました。さらには、私たちが提出した @viewport 規則の提案 もサポートしています。また、Opera Mini 6 でも、基本的な viewport メタタグのサポートが行われました。

Opera extensions: publishing guidelines

March 31, 2011 · by Opera Software

Figure 1: Overview of the publishing process - the developer creates an extension and submits it to the Opera extensions repository. The extension moderators then test the extension and publish it, or reject it and send it back to the developer to work on it…

An introduction to meta viewport and @viewport

March 22, 2011 · by Andreas Bovens

Support for the viewport meta tag in Opera’s mobile products has been around for quite some time, and in Opera Mobile 11 we have made our viewport implementation more robust, added support for new mechanisms to deal with different screen densities, and…

Opera Mobile 11 for Maemo, MeeGo and Windows

March 22, 2011 · by Fredrik Öhrn

Today we are launching final versions of Opera Mobile 11 for Android and Symbian/S60 as well as Mini 6 for various platforms. We are also making available builds of Opera Mobile 11 for Maemo, MeeGo and Windows here on labs.opera.com. The MeeGo and Windows…

Taking your web apps offline: A tale of Web Storage, Application Cache and WebSQL

March 22, 2011 · by Shwetank Dixit

To make applications run fully offline, we should make ourselves familiar with three very interesting technologies: The HTML5 Application Cache, Web Storage and WebSQL Databases.

Creating effective Opera Extension icons

March 17, 2011 · by Christian Magnus Sinding-Larsen

This article provides a tutorial and some hints and tips on creating effective icons for your extensions. I've put the hints and tips at the beginning so you can easily refer back to them; the tutorial then follows.

CSS3 linear gradients

March 17, 2011 · by Chris Mills

For as long as we can remember, we have used colour gradients on the Web to brighten things up, and add class to designs. If you want to create a fantastic looking button, panel, gauge, progress bar or other UI feature, a gradient is the way to go.

CSS3 Multi-column layout

March 17, 2011 · by Molly E. Holzschlag

Multiple column design that allows text to flow naturally from column to column depending on width and other parameters has proven invaluable in print design, crossing languages, cultures and a range of media. It will therefore come as no surprise to anyone…

Make your site shine in Speed Dial

March 11, 2011 · by Tiffany Brown

As of version 11.10, Opera for desktop allows content creators to control how their site looks in Speed Dial. By default, Speed Dial uses a screen capture of the web site. But now site owners can specify an icon or serve Speed Dial-specific CSS or content.

Site blocking with Opera’s URL Filter API

March 11, 2011 · by Daniel Davis

Picture the scene: You come back home late, tired from a fun but exhausting night out and you decide to quickly check your preferred microblogging site. You don’t quite agree with one of the messages you read and decide to fire off a quick reply. When you…

Introducing WOFF (Web Open Font Format)

March 9, 2011 · by Zi Bin Cheah

Opera's Håkon Wium Lie first publicized the idea of freely downloadable fonts, the idea being to give designers the freedom to choose fonts of their preference beyond the traditional "web safe font set". This formed the basis of Web Fonts.

WebGL and Hardware Acceleration

February 28, 2011 · by Tim Johansson

A long time ago, in an office far far away...Opera released a custom build showing an implementation of a 3D canvas context . Now, more than 3 years later, we are releasing the first public build with a standards-based 3D canvas implementation using WebGL for…

JavaScript array “extras” in detail

February 23, 2011 · by Dmitry A. Soshnikov

In this article we’ll look at the functionality made available by the new methods of array objects standardized in ECMA-262 5th edition (aka ES5). Most of the methods dicussed below are higher-order (we’ll clarify this term shortly below), and related to…

HTML 5 compliance: the next step

February 22, 2011 · by Bruce Lawson

Making its debut in a Labs build this week is Ragnarök , our implementation of the HTML5 Parsing algorithm. We'd love you to try to break this and give us feedback, so please grab a copy to install on your machine from one of the download links below.

Simple HTML5 video player with Flash fallback and custom controls

February 17, 2011 · by Bruce Lawson, Vadim Makeev

Article adapted from original published in .net magazine July 2010 issue. Thanks to Dan Oliver and team!

Come funziona Internet

February 15, 2011 · by Giuseppe Modarelli

Raramente vi viene offerta la possibilità di dare un'occhiata al "dietro le quinte", agli ingranaggi e meccanismi che muovono l'azione. Oggi è il vostro giorno fortunato! Vi farò entrare nel dietro le quinte di una delle più eccitanti tecnologie, con la quale…

Widget runtime: WAC-1.0-compliant Golden for Android

February 14, 2011 · by Pavel Fokin

It’s been a long trip, but we’ve finally arrived – today our lasting intensive work on a WAC-1.0-compliant runtime is finished, and we are proudly presenting the final Golden build that we are also demonstrating at the Mobile World Congress event! All WAC 1.0…

Opera Mini: web content authoring guidelines

February 11, 2011 · by Opera Software

This document has two purposes: first, it aims to outline a broad view of the state of mobile browsing and its unique constraints and restrictions, and second, it details the things you should be aware of when designing web pages with Opera Mini in mind.

Getting started with OperaWatir

February 9, 2011 · by Stuart Knightley

The Watir API allows us to write Ruby scripts that interact with any web page, automatically going through all the steps users would normally take and alerting us to any problems quickly. This makes testing much quicker and easier.

Widget Runtime: WAC 1.0-supporting Beta 2 for Android

February 1, 2011 · by Pavel Fokin

Today we are rolling out the next bugfix release of our Android widget runtime with WAC 1.0 APIs support. Many bugs were fixed since the previous release; please refer to release notes for more details.

Widgets Runtime: WAC 1.0-supporting Beta for Android

January 21, 2011 · by Pavel Fokin

Hi, guys! Happy New Year! We are pleased to start it with the Beta release of our WAC 1.0-supporting runtime for Android.

Get familiar with HTML5!

January 14, 2011 · by Chris Mills

Most of the web standards curriculum is based on the last stable version of HTML — HTML 4.01. The HTML 4.01 spec was completed in 1999, over 10 years ago as of the time of this writing! But unless you've been hiding under a rock for the last year or so,…

The CSS3 object-fit and object-position properties

January 6, 2011 · by Chris Mills

A common problem in CSS concerns how to control the aspect ratio of replaced elements, such as <img> or <video>. For example, you might want to have all images occupy the same space on a page, but not distort and lose their aspect ratio when someone uses an…