Pergunta

Minha pergunta é sobre um script imglib padrão do SharePoint.O script está localizado na seguinte pasta:14 EMPLATE\LAYOUTS\1033\imglib.js

O script tem uma função chamada:GereFooterContent(f,g).

Basicamente, quero substituir esse método e fazer outras coisas em vez do atual.Alguém tem alguma idéia de como posso conseguir isso?

Copiei toda a função para meu arquivo javascript personalizado e adicionei-o à página mestre.Mas como posso dizer agora que, em vez da função padrão, minha função personalizada deve ser usada pelo script?

Nisto Link há um problema semelhante, mas nenhuma solução é fornecida.

Alguém pode me dar uma dica de como resolver o problema?

ATUALIZAR:

função para modificar:função GenerateNFooterContent(f, g) porque leva parâmetros, tenho que chamar a função de chamada acima

função ViewFooterScript() Nesta função chamarei NEWGenerateNFooterContent

Então aqui está o script que deve substituí-lo, está correto:

window.ViewFooterScript = function () {

    this.ViewFooterScript();
};

Embora não funcione.

Foi útil?

Solução

Certifique-se de usar o objeto global (janela) quando você a substitui, assim:

var oldGenerateFooterContent = window.GenerateFooterContent;
window.GenerateFooterContent = function() {
  console.log('Hello, world!');
  // if you want you can call the old function here
  oldGenerateFooterContent();
};

Atualizar:
Se você quiser fornecer os mesmos argumentos, você pode fazer isso chamando aplicar.
assim:

oldGenerateFooterContent.apply(this, arguments);
// or
oldGenerateFooterContent.apply(null, arguments);

Outras dicas

Você quer dar um soco na função.

Socando pato em javascript.

Perfuração de pato em JQuery

Licenciado em: CC-BY-SA com atribuição
Não afiliado a sharepoint.stackexchange
scroll top