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

ÔÚC++ÖÐÓÃWebBrowser¿Ø¼þµ÷ÓÃJavaScriptº¯Êý

Ö÷Òªº¯Êý CallJScript
BOOL CallJScript(const wchar_t * func, VARIANT * vtParams, int cNumberOfParam, VARIANT * vtResult)
{
if(!func || !func[0])
return FALSE;
CComPtr<IDispatch> spScript;
spScript = GetJScript();
if(!spScript)
return FALSE;
DISPID dispID = NULL;
CComBSTR bstrFunc(func);
HRESULT hr = spScript->GetIDsOfNames(IID_NULL, &bstrFunc, 1, LOCALE_SYSTEM_DEFAULT, &dispID);
if(FAILED(hr))
return FALSE;
DISPPARAMS dispParams = {0};
dispParams.cArgs = cNumberOfParam;
dispParams.rgvarg = new VARIANT[cNumberOfParam];
for(int i = 0; i < cNumberOfParam; ++i)
{
VariantInit(&dispParams.rgvarg[i]);
VariantCopy(&dispParams.rgvarg[i], &vtParams[cNumberOfParam - 1 - i]);
}
hr = spScript->Invoke(dispID, IID_NULL, 0, DISPATCH_METHOD, &dispParams, vtResult, NULL, NULL);
delete [] dispParams.rgvarg;
if(FAILED(hr))
return FALSE;
return TRUE;
}
ÆäËüº¯Êý
IHTMLDocument2 * GetIDocument2()
{
if(!m_pWebBrowser2) return NULL;
IDispatch *pIDispatch = NULL;
if (SUCCEEDED(m_pWebBrowser2->get_Document(&pIDispatch)) && pIDispatch)
{
IHTMLDocument2 *pIDocument2 = NULL;
if (SUCCEEDED(pIDispatch->QueryInterface(IID_IHTMLDocument2, (void**)&pIDocument2)))
{
pIDispatch->Release();
return pIDocument2;
}
pIDispatch->Release();
}
return NULL;
}
IDispatch * GetJScript()
{
CComPtr<IHTMLDocument2> doc;
doc = GetIDocument2();
if(!doc)
return NULL;
IDispatch * dsScript = NULL;
HRESULT hr = doc->get_Script(&dsScript);
if(SUCCEEDED(hr) && dsScript)
return dsScript;
else
return NULL;


Ïà¹ØÎĵµ£º

JavaScript »ñÈ¡¶ÔÏóµÄ¸ß¶ÈºÍ¿í¶ÈÏêϸ˵Ã÷

scrollHeight: »ñÈ¡¶ÔÏóµÄ¹ö¶¯¸ß¶È¡£
scrollLeft:ÉèÖûò»ñȡλÓÚ¶ÔÏó×ó±ß½çºÍ´°¿ÚÖÐĿǰ¿É¼ûÄÚÈݵÄ×î×ó¶ËÖ®¼äµÄ¾àÀë
scrollTop:ÉèÖûò»ñȡλÓÚ¶ÔÏó×î¶¥¶ËºÍ´°¿ÚÖпɼûÄÚÈݵÄ×î¶¥¶ËÖ®¼äµÄ¾àÀë
scrollWidth:»ñÈ¡¶ÔÏóµÄ¹ö¶¯¿í¶È
offsetHeight:»ñÈ¡¶ÔÏóÏà¶ÔÓÚ°æÃæ»òÓɸ¸×ø±ê offsetParent ÊôÐÔÖ¸¶¨µÄ¸¸×ø±êµÄ¸ß¶È
offsetL ......

JavascriptÖÐ×î³£ÓõÄ55¸ö¾­µä¼¼ÇÉ

 1. oncontextmenu="window.event.returnValue=false" ½«³¹µ×ÆÁ±ÎÊó±êÓÒ¼ü
<table border oncontextmenu=return(false)> <td>no </table> ¿ÉÓÃÓÚTable

2. <body onselectstart="return false"> È¡Ïûѡȡ¡¢·ÀÖ¹¸´ÖÆ

3. onpaste="return false&quo ......

JavaScript±íµ¥ÑéÖ¤´óÈ«£¨¶þ£©

/*
ÓÃ;£º¼ì²éÊäÈë×Ö·û´®ÊÇ·ñÖ»ÓÉÓ¢ÎÄ×ÖĸºÍÊý×ÖºÍÏ»®Ïß×é³É
ÊäÈ룺
s£º×Ö·û´®
·µ»Ø£º
Èç¹ûͨ¹ýÑéÖ¤·µ»Øtrue,·ñÔò·µ»Øfalse
*/
function isNumberOr_Letter( s ){//ÅжÏÊÇ·ñÊÇÊý×Ö»ò×Öĸ
var regu = "^[0-9a-zA-Z\_]+$";
var re = new RegExp(regu);
if (re.test(s)) {
return true;
}else{
return false;
} ......

javaScript Êý×é

 1¡¢Êý×éµÄ´´½¨
var arrayObj = new Array();¡¡//´´½¨Ò»¸öÊý×é
var arrayObj = new Array([size]);¡¡//´´½¨Ò»¸öÊý×é²¢Ö¸¶¨³¤¶È£¬×¢Òâ²»ÊÇÉÏÏÞ£¬Êdz¤¶È
var arrayObj = new Array([element0[, element1[, ...[, elementN]]]]);¡¡´´½¨Ò»¸öÊý×é²¢¸³Öµ
Ҫ˵Ã÷µÄÊÇ£¬ËäÈ»µÚ¶þÖÖ·½·¨´´½¨Êý×éÖ¸¶¨Á˳¤¶È£¬µ«Êµ¼ÊÉÏËùÓ ......

[´ÓjQuery¿´JavaScript]

¡¡¡¡Ç°ÎÄÔÙÐøÊé½ÓÉÏÒ»»Ø£¬»°Ëµµ±ÈÕ°øÍí£¬Áîºü³å°Ý±ðʦ¸µ——¶î£¬¿´´íÊéÁË……£¨ÇáËÉÒ»ÏÂ~¹þ~£©
¡¡¡¡ÔÚÕâÒ»½ÚµÄǰ°ëƪ£¬ÎÒÃÇÖØÎÂÁËJSÀïµÄÊý¾ÝÀàÐÍ¡£ÔÚÖÚ¶àµÄÊý¾ÝÀàÐÍÖ®ÖУ¬ÓÐÒ»ÖÖ½Ð×öobject£¬Ò²¾ÍÊÇÎÒÃdz£ËµµÄ¶ÔÏó¡£ÈçǰËùÊö£¬¶ÔÏó¾ÍÊÇÒ»×éÊôÐԺͷ½·¨µÄ¼¯ºÏ¡£ÊôÐÔ¾ÍÊǶÔÏóËù¹ØÁªµÄ±äÁ¿£¬¶ø·½·¨ÔòÊÇ¶Ô ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ