如何拦截变量值

时间:2012-10-21 20:54:28

标签: javascript google-chrome-extension

我正在尝试创建一个Chrome扩展程序,用于计算某个网页上显示的某些数字的平均值。 网页使用此功能显示它们:

function MakeBody(Property, dValue, Color){
    document.write ("<tr>")
    document.write ("<td width='16'> &nbsp;</td>");
    document.write ("<td width='10'>&nbsp;</td>");
    document.write ("<td><p class='NormalText'>&nbsp;&nbsp;<font color='"+Color+"'>"+Property+"</font></p></td>");
    document.write ("<td><p class='NormalText'>&nbsp;&nbsp;<font color='"+Color+"'><b>"+dValue+"</font></b></p></td>");
    document.write ("<td width='16'>&nbsp;</td>");
    document.write ("</tr>");
}

我需要拦截和计算它们的平均值来自“dValue”变量。这可能吗?

1 个答案:

答案 0 :(得分:0)

仅当您可以使用执行操作的新函数替换MakeBody函数,然后调用原始函数时:

   // cache the original
var __MakeBody__ = MakeBody;

   // replace it with yours
MakeBody = function(Property, dValue, Color) {
    // manipulate 'dValue' here

        // invoke the original
    return __MakeBody__.call(this, Property, dValue, Color);
};