Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ÔÚJavaScript µ÷ÓÃC++

·½°¸Ò»£º
// html & JavaScript
...
<button value="Click me"
onclick="window.navigate('app:command&arg1=1&arg2=2')" />
...
 // C++: ÏìÓ¦ µÄÏûÏ¢º¯ÊýOnBeforeNavigat2 
virtual void OnBeforeNavigate2( LPCTSTR lpszURL, DWORD nFlags, LPCTSTR lpszTargetFrameName,
CByteArray& baPostedData, LPCTSTR lpszHeaders, BOOL* pbCancel );
// C++ code goes here
CXXXDlg::OnBeforeNavigate2( LPCTSTR lpszURL, DWORD nFlags, LPCTSTR lpszTargetFrameName,
CByteArray& baPostedData, LPCTSTR lpszHeaders, BOOL* pbCancel )
{
CString strUrl = lpszURL;
if(strUrl.Left(4) == _T("app:"))
{
// cancel the common url navigate and call your c++ code here
*pbCancel = TURE;
// call other c++ function here or parse the argument in the strUrl

}
// go common url navigate here

}

·½°¸¶þ£º
// html & javaScript
...
function CallCpp()
{
alert('start to call cpp here');
window.external.JavaScriptCallCpp('This
is a test for call C++ in JavaScript');
}
<button onclick="CallCpp()"
>JavaScript·ÃÎÊC++´úÂë</button>
...
// C++ code goes here
CString javaScriptName =
_T("JavaScriptCallCpp");
#define DISPID_CallCppfromJs 1
// ʵÏÖIDispatch ½Ó¿Ú
// .h
class CImpIDispatch : public IDispatch
{
protected:
ULONG m_cRef;
public:
CImpIDispatch(void);
~CImpIDispatch(void);
STDMETHODIMP QueryInterface(REFIID, void **);
STDMETHODIMP_(ULONG) AddRef(void);
STDMETHODIMP_(ULONG) Release(void);
//IDispatch
STDMETHODIMP GetTypeInfoCount(UINT* pctinfo);
STDMETHODIMP GetTypeInfo(/* [in] */ UINT iTInfo,
/* [in] */ LCID lcid,
/* [out] */ ITypeInfo** ppTInfo);
STDMETHODIMP GetIDsOfNames(
/* [in] */ REFIID riid,
/* [size_is][in] */ LPOLESTR *rgszNames,
/* [in] */ UINT cNames,


Ïà¹ØÎĵµ£º

JavaScript ʱ¼ä¼Ó¼õ ¸Ä±ä

JavaScript ʱ¼ä¼Ó¼õ:
<HTML>
<BODY>
    <script type="text/javascript">
        var time = new Date("04/30/2010");
        document.write(time);
        ......

javascriptʼþϵͳµÄ·¢Õ¹Ê·

Ò»¸öÍêÕûµÄʼþϵͳ£¬Í¨³£´æÔÚÒÔÏÂÈý¸ö½ÇÉ«£º
ʼþ¶ÔÏó£¬ÓÃÓÚ´¢´æʼþµÄ״̬¡£
ʼþÔ´¶ÔÏ󣬵±Ç°Ê¼þÔÚ²Ù×÷µÄ¶ÔÏó£¬ÈçÔªËؽڵ㣬Îĵµ¶ÔÏó£¬window¶ÔÏó£¬XMLHttpRequest¶ÔÏóµÈ¡£
ʼþ¼àÌýÆ÷£¬µ±Ò»¸öʼþÔ´Éú³ÉÒ»¸öʼþ¶ÔÏóʱ£¬Ëü»áµ÷ÓÃÏàÓ¦µÄ»Øµ÷º¯Êý½øÐвÙ×÷¡£ÔÚIEÖУ¬Ê¼þ¶ÔÏóºãΪȫ¾ÖÊôÐÔwindow.eventµÄ·ÖÉí¡£
ÔÚw3cà ......

¶Á¡¶¸ßÖÊÁ¿C++_C±à³ÌÖ¸ÄÏ(ÁÖÈñ²©Ê¿)¡·ÓиÐ!

  Äõ½Õâ±¾µç×ÓÊé¿´ÁËÁÖ²©Ê¿Ð´µÄÇ°ÑÔ£¬½²ÊöµÄʲôÊDZà³ÌÀÏÊÖÓë±à³Ì¸ßÊÖ£¬´ËʱÎÒ²ÅÖªÎÒÖ»ÄܳƵÃÉÏÊÇÒµÓà±à³Ì°®ºÃÕ߶øÒÑ,ÁÖ²©Ê¿¶Ô±à³ÌÀÏÊÖÓë±à³Ì¸ßÊÖ×öÁËÈçϵĶ¨Ò壺
  ¶¨Òå 1£ºÄܳ¤ÆÚÎȶ¨µØ±àд³ö¸ßÖÊÁ¿³ÌÐòµÄ³ÌÐòÔ±³ÆΪ±à³ÌÀÏÊÖ¡£
  ¶¨Òå 2£ºÄܳ¤ÆÚÎȶ¨µØ±àд³ö¸ßÄѶȡ¢¸ßÖÊÁ¿³ÌÐòµÄ³ÌÐòÔ±³ÆΪ±à³Ì¸ßÊÖ¡£ ......

JavaScript»ù´¡¸ÅÄîÀí½â


  ×î»ù´¡µÄºËÐŦÄÜ ÈçÔËËã·û(+-*/µÈ) ¿ØÖÆÁ÷³ÌÓï¾ä(if,for,whileµÈ) µÈµÈÎҾͲ»ËµÁË. ÕâÊÇ×î×î»ù±¾µÄ֪ʶ.
   BOM֪ʶ
  BOM Browser Object Model ä¯ÀÀÆ÷¶ÔÏóÄ£ÐÍ.  
  window¶ÔÏóÊÇBOM×îÖØÒªµÄ¶ÔÏó. ÎÒÃÇ¿ÉÒÔ¼òµ¥µÄ°ÑÒ»¸öIE´°¿ÚÀí½âΪһ¸öwindow¶ÔÏó.
  window ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ