« Les scripts de Maxthon v2.0 » : différence entre les versions

De Wiki Francophone de Maxthon
Ldfa (discussion | contributions)
Aucun résumé des modifications
Ldfa (discussion | contributions)
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
Version: 2.0.1<br /> Last Modified: 2006-07-17 4:24 PM
Version: 2.0.1<br /> Last Modified: 2006-07-17 4:24 PM


===Overview===


==Overview==
Maxthon Browser has extended the DHTML support of IE by adding several new extensions which can be called by scripting language such as Javascript and VBScript.
Maxthon Browser has extended the DHTML support of IE by adding several new extensions which can be called by scripting language such as Javascript and VBScript.


Ligne 9 : Ligne 9 :
Some functions will require a <span class="flag">security_id</span> as first parameter. These Functions can only be used by Plugins.<br /> In order to get a <span class="flag">security_id</span> for your plugin, you can do the following:
Some functions will require a <span class="flag">security_id</span> as first parameter. These Functions can only be used by Plugins.<br /> In order to get a <span class="flag">security_id</span> for your plugin, you can do the following:


=====Button Plugins=====


====Button Plugins====
Put a <span class="flag">%max_security_id</span> in your script, such as:
Put a <span class="flag">%max_security_id</span> in your script, such as:


Ligne 17 : Ligne 17 :
Then you can use the variable <span class="flag">security_id</span> in your script.
Then you can use the variable <span class="flag">security_id</span> in your script.


=====Sidebar Plugins=====


====Sidebar Plugins====
A file named <span class="flag">max.src</span> will be created in your plugin's folder, include this file in your HTML file:
A file named <span class="flag">max.src</span> will be created in your plugin's folder, include this file in your HTML file:


Ligne 25 : Ligne 25 :
Then use variable <span class="flag">max_security_id</span> for security id parameter in your script.
Then use variable <span class="flag">max_security_id</span> for security id parameter in your script.


===Index===


=====Extended Properties=====
==Index==


====Extended Properties====
* [#max_version max_version] : Get current version of Maxthon Browser
* [#max_version max_version] : Get current version of Maxthon Browser
* [#max_language_id max_language_id] : Get current language id of Maxthon UI
* [#max_language_id max_language_id] : Get current language id of Maxthon UI
Ligne 34 : Ligne 34 :
* [#tab_count tab_count] : Get current opened tabs' count
* [#tab_count tab_count] : Get current opened tabs' count


=====General Methods=====
====General Methods====
 
* [#addFavorite addFavorite()] : Call the Add Favorites dialog
* [#addFavorite addFavorite()] : Call the Add Favorites dialog
* [#addProxy addProxy()] : Call the Add Proxy dialog
* [#addProxy addProxy()] : Call the Add Proxy dialog
Ligne 44 : Ligne 43 :
* [#m2_plugin_folder m2_plugin_folder()] : Get local folder path of a plugin
* [#m2_plugin_folder m2_plugin_folder()] : Get local folder path of a plugin


=====Tab Related Methods=====
====Tab Related Methods====
 
* [#get_tab get_tab()] : Get a tab's window object by index
* [#get_tab get_tab()] : Get a tab's window object by index
* [#activate_tab activate_tab()] : Activate a tab by index
* [#activate_tab activate_tab()] : Activate a tab by index
* [#close_tab close_tab()] : Close a tab by index
* [#close_tab close_tab()] : Close a tab by index


=====File Related Methods=====
====File Related Methods====
 
* [#readFile readFile()] : Read a file's content
* [#readFile readFile()] : Read a file's content
* [#writeFile writeFile()] : Write data to a file
* [#writeFile writeFile()] : Write data to a file
Ligne 57 : Ligne 54 :
* [#m2_writeIni m2_writeIni()] : Write to an INI file
* [#m2_writeIni m2_writeIni()] : Write to an INI file


===Extended Properties===


====max_version====
==Extended Properties==


===max_version===
<div class="indent">
<div class="indent">


=====Remarks:=====
====Remarks:====
 
This property will return a string of Maxthon Browser Version Number.<br /> The return string is formatted like <span class="string">"2.1.0.600"</span>.
This property will return a string of Maxthon Browser Version Number.<br /> The return string is formatted like <span class="string">"2.1.0.600"</span>.


It's sugguested use this property to determine whether Maxthon Browser is running.
It's sugguested use this property to determine whether Maxthon Browser is running.


=====Requirements:=====
====Requirements:====
 
  Maxthon Version 2.0+<br /><br />
  Maxthon Version 2.0+<br /><br />


=====Example:=====
====Example:====
 
[javascript:v() [Demo 1]]
[javascript:v() [Demo 1]]


<div class="codeblock"><span class="keyword">alert</span>(<span class="string">'Maxthon Version: '</span>+<span class="keyword">external</span>.<span class="keyword">max_version</span>);</div></div>
<div class="codeblock"><span class="keyword">alert</span>(<span class="string">'Maxthon Version: '</span>+<span class="keyword">external</span>.<span class="keyword">max_version</span>);</div></div>


====max_language_id====
===max_language_id===
 
<div class="indent">
<div class="indent">


=====Remarks:=====
====Remarks:====
 
This property will return current language id of Maxthon Browser.
This property will return current language id of Maxthon Browser.


The Language ID has change to use Language Identifiers defined in Microsoft Windows since Maxthon Browser 2.0. <br /> A list of Maxthon's Language IDs can be found at:<br />http://msdn.microsoft.com/library/?url=/library/en-us/intl/nls_238z.asp
The Language ID has change to use Language Identifiers defined in Microsoft Windows since Maxthon Browser 2.0. <br /> A list of Maxthon's Language IDs can be found at:<br />http://msdn.microsoft.com/library/?url=/library/en-us/intl/nls_238z.asp


=====Requirements:=====
====Requirements:====
 
  Maxthon Version 1.0+<br /><br />
  Maxthon Version 1.0+<br /><br />


=====Example:=====
====Example:====
 
[javascript:v() [Demo 1]]
[javascript:v() [Demo 1]]



Version du 15 août 2006 à 18:35

Version: 2.0.1
Last Modified: 2006-07-17 4:24 PM


Overview

Maxthon Browser has extended the DHTML support of IE by adding several new extensions which can be called by scripting language such as Javascript and VBScript.

These APIs can be called via the window.external object in a HTML page or a script plugin made for Maxthon Browser.

Some functions will require a security_id as first parameter. These Functions can only be used by Plugins.
In order to get a security_id for your plugin, you can do the following:


Button Plugins

Put a %max_security_id in your script, such as:

var security_id=%max_security_id;

Then you can use the variable security_id in your script.


Sidebar Plugins

A file named max.src will be created in your plugin's folder, include this file in your HTML file:

<script type="text/javascript" src="max.src"></script>

Then use variable max_security_id for security id parameter in your script.


Index

Extended Properties

  • [#max_version max_version] : Get current version of Maxthon Browser
  • [#max_language_id max_language_id] : Get current language id of Maxthon UI
  • [#current_tab current_tab (cur_sel)] : Get current tab's index
  • [#tab_count tab_count] : Get current opened tabs' count

General Methods

  • [#addFavorite addFavorite()] : Call the Add Favorites dialog
  • [#addProxy addProxy()] : Call the Add Proxy dialog
  • [#addFilter addFilter()] : Call the Add Filter dialog
  • [#max_addProxyProvider max_addProxyProvider()] : Call the Add Proxy Provider dialog
  • [#m2_run_cmd m2_run_cmd()] : Execute Maxthon functions by Command ID
  • [#m2_search_text m2_search_text()] : Get search string in Maxthon's Search Box
  • [#m2_plugin_folder m2_plugin_folder()] : Get local folder path of a plugin

Tab Related Methods

  • [#get_tab get_tab()] : Get a tab's window object by index
  • [#activate_tab activate_tab()] : Activate a tab by index
  • [#close_tab close_tab()] : Close a tab by index

File Related Methods

  • [#readFile readFile()] : Read a file's content
  • [#writeFile writeFile()] : Write data to a file
  • [#m2_readIni m2_readIni()] : Read an INI file
  • [#m2_writeIni m2_writeIni()] : Write to an INI file


Extended Properties

max_version

Remarks:

This property will return a string of Maxthon Browser Version Number.
The return string is formatted like "2.1.0.600".

It's sugguested use this property to determine whether Maxthon Browser is running.

Requirements:

Maxthon Version 2.0+

Example:

[javascript:v() [Demo 1]]

alert('Maxthon Version: '+external.max_version);

max_language_id

Remarks:

This property will return current language id of Maxthon Browser.

The Language ID has change to use Language Identifiers defined in Microsoft Windows since Maxthon Browser 2.0.
A list of Maxthon's Language IDs can be found at:
http://msdn.microsoft.com/library/?url=/library/en-us/intl/nls_238z.asp

Requirements:

Maxthon Version 1.0+

Example:

[javascript:v() [Demo 1]]

alert('Language ID='+external.max_language_id);

current_tab (formerly cur_sel ) Not Implemented

Remarks:
This property will return an integer number as the index of the tab which is activated.
null will be returned if there is no tab opened.
current_tab is introduced in Maxthon 2.0 as a replacement of cur_sel because the old property name is too obscure to understand.

Requirements:
Maxthon Version 2.0+ (use cur_sel for 1.x versions)

Example:

[javascript:v() [Demo 1]]

alert('Current Tab Index: '+external.current_tab);

tab_count

Remarks:
This property will return current tab count as an integer.

Requirements:
Maxthon Version 1.0+

Example:

[javascript:v() [Demo 1]]

alert('Tabs Count: '+external.tab_count);



General Methods

addFavorite(url [, title])

Parameters:

url : string
The url to add.

title : string
Optional. The title of the url.

Remarks:
Show the Add Favorite dialog to ask user to add a new Favorites Item.
This function will return false if user cancelled this operation.

Requirements:
Maxthon Version 1.0+

Example:

[javascript:v() [Demo 1]]

external.addFavorite("http://www.maxthon.com");

[javascript:v() [Demo 2]]

external.addFavorite("http://www.maxthon.com", "Maxthon Official Site");

addProxy(name, address, type)

Parameters:

name : string
The display name of proxy.

address : string
The IP address or Domain name of proxy.

type : integer
A number indicates the speed rating of proxy.
= HTTP Proxy, 1 = SOCKS4A Proxy, 2 = SOCKS5 Proxy

Remarks:
Add a new proxy into Maxthon's proxy list. A dialog will be shown to the user.
This function will return false if user cancelled this operation.

Requirements:
Maxthon Version 2.0+

Example:

[javascript:v() [Demo 1]]

external.addProxy("My proxy","192.168.1.0:8080", 1);

addFilter(url_mask, type)

Parameters:

url_mask : string
Address mask to match blocked addresses. Supports Regular Expression.

type : integer
A number indicates which Filter list to add.
= Popup Filter, 1 = Content Filter

Remarks:
Add a new filter policy into Maxthon. A dialog will be shown to the user.
This function will return false if user cancelled this operation.

Requirements:
Maxthon Version 2.0+

Example:

[javascript:v() [Demo 1]]

external.addFilter("http://www.advertisement.com/img/*", );

max_addProxyProvider(URL)

Parameters:

URL : string
The URL of proxy list file. File format please refer to [proxyprovider.htm this document].

Remarks:
Add a new Proxy Provider into Maxthon Broser. A dialog will be shown to the user.
This function will return false if user cancelled this operation.

Requirements:
Maxthon Version 2.0+

Example:

[javascript:v() [Demo 1]]

external.max_addProxyProvider("http://www.freeproxy.cn/m2proxy/proxylist.xml");

m2_run_cmd(security_id, command_id)

Parameters:

security_id : string
Maxthon's Security ID.

command_id : integer
The internal command ID of Maxthon.

Remarks:
This function will call a Maxthon's command with specified command_id.
Most usable Command IDs can be found in the language file inside Maxthon's language folder.
Command ID might be different between versions. Please do not use this function if not required.

Requirements:
Maxthon Version 1.0+

Example:

external.m2_run_cmd(security_id, 32772); // Open a Blank Page

m2_search_text(security_id)

Parameters:

security_id : string
Maxthon's Security ID.

Remarks:
This function will return the text in Maxthon's Search Box as a string.

Requirements:
Maxthon Version 1.2+

Example:

var searchText=external.m2_search_text(security_id);

m2_plugin_folder(security_id, plugin_name)

Parameters:

security_id : string
Maxthon's Security ID.

plugin_name : string
The name of the plugin as defined in plugin.ini.

Remarks:
This function will return the local folder path of specified plugin as a string.

Requirements:
Maxthon Version 1.2+

Example:

var pluginPath=external.m2_plugin_folder(security_id, "ViewSource!");

m2_callerName(security_id, plugin_name)

Parameters:

security_id : string
Maxthon's Security ID.

plugin_name : string
The name of the plugin as defined in plugin.ini.

Remarks:
This function will tell Maxthon the next function call is from a plugin.
This function is usually used before the window.open() method to bypass the Popup Blocker of Maxthon for the plugin.

Requirements:
Maxthon Version 1.2+

Example:

external.m2_callerName(security_id, "ViewSource!");
window.open("about:blank");

max_actSideBarItem(plugin_name)

Parameters:

plugin_name : string
The name of the plugin as defined in plugin.ini.

Remarks:
This function will activate the sidebar plugins with the given name. 

Requirements:
Maxthon Version 1.2+

Example:

[javascript:v() [Demo 1]]

external.max_actSideBarItem("Calculator++");



max_modelessDialog(security_id, url, arguments, features, parent_window)

Parameters:

security_id : string
Maxthon's Security ID.

url : string
The url of modeless dialog content.

arguments : variant
The arguments pass to the modeless dialog's window.dialogArguments object.

features : string
A String that specifies the window ornaments for the dialog box.

parent_window : object
The parent window object of the dialog.

Remarks:
This function is almost the same as window.showModelessDialog() but with two more parameters.
With the security_id your plugin can bypass Maxthon's Popup Blocker.
With the parent_window you can make the dialog being a child of another tab's window.

Requirements:
Maxthon Version 1.2+

Example:

external.max_modelessDialog(security_id, "about:blank", {"userid": 7, "key": "d3fe3asd"}, "status:no; help:no; resizable:yes; scroll:yes;", window);



get_tab(security_id, index)

Parameters:

security_id : string
Maxthon's Security ID.

index : integer
The index of the tab to get.

Remarks:
This function will get the window object of specified tab in Maxthon.
null will be returned if the tab does not exist.

Requirements:
Maxthon Version 1.0+

Example:

var objTab=external.get_tab(security_id, 5);



activate_tab(security_id, index)

Parameters:

security_id : string
Maxthon's Security ID.

index : integer
The index of the tab to be activated.

Remarks:
This function will activate the specified tab in Maxthon.
Nothing will happen if the tab does not exist.

Requirements:
Maxthon Version 1.0+

Example:

external.activate_tab(security_id, 1);



close_tab(security_id, index)

Parameters:

security_id : string
Maxthon's Security ID.

index : integer
Integer. The index of the tab to close.

Remarks:
This function will close the tab which index represents.
Nothing will happen if the tab does not exist.

Requirements:
Maxthon Version 1.0+

Example:

external.close_tab(security_id, );



readFile(security_id, plugin_name, file_name)

Parameters:

security_id : string
Maxthon's Security ID.

plugin_name : string
The name of calling plugin as defined in plugin.ini

file_name : string
The file to read.

Remarks:
This function can only be used in a plugin.
The function will return the file content in string when success.
If the plugin is not enabled or the plugin_name is not found, the function will fail and return null.

Requirements:
Maxthon Version 1.0+

Example:

var strFile=external.readFile(security_id, "Test plugin", "plugin.ini");



writeFile(security_id, plugin_name, file_name, content)

Parameters:

security_id : string
Maxthon's Security ID.

plugin_name : string
The name of calling plugin as defined in plugin.ini

file_name : string
The file to write.

content : string
File content string to write.

Remarks:
This function can only be used in a plugin.
This function will return true when success.
If the file is not found, the plugin is not enabled or the plugin_name is not found, the function will fail and return false.
If a file with the same name exists, it will be overwritten.

Requirements:
Maxthon Version 1.0+

Example:

external.writeFile(security_id, "Test plugin", "setting.ini", "username=abc\npass=qwrxcv");



m2_readIni(security_id, plugin_name, file_name, section_name, key, default_value)

Parameters:

security_id : string
Maxthon's Security ID.

plugin_name : string
The name of calling plugin as defined in plugin.ini.

file_name : string
The name of the INI file to read.

section_name : string
The INI section to read, without brackets [ ].

key : string
The key of the entry to read.

default_value : string
The default value to return if the key does not exist.

Remarks:
This function will read the value of key under section section_name in INI file file_name.
The INI file must be placed inside the folder of plugin plugin_name.
The value will be returned as a string if success.
If the file does not exist, the section does not exist or the key does not exist, the default_value will be returned.

Requirements:
Maxthon Version 1.0+

Example:

var saveCount = external.m2_readIni(security_id, "TestPlugin", "settings.ini", "general", "saveCount", "0");



m2_writeIni(security_id, plugin_name, file_name, section_name, key, value)

Parameters:

security_id : string
Maxthon's Security ID.

plugin_name : string
The name of calling plugin as defined in plugin.ini.

file_name : string
The name of the INI file to write.

section_name : string
The INI section to write, without brackets [ ].

key : string
The key of the entry to write.

value : string/integer
The value to write.

Remarks:
This function will write a key and value pair entry under section section_name in INI file file_name.
The INI file can only be writen inside the folder of plugin plugin_name.
If the file does not exist, the section does not exist or the key does not exist, they will be created automatically.
This function will return true when success and false when failed.

Requirements:
Maxthon Version 1.0+

Example:

external.m2_writeIni(security_id, "TestPlugin", "settings.ini", "general", "saveCount", 25);