У меня есть код JavaScript, который будет выполняться в веб-части SharePoint. Я хотел бы, чтобы функция выполнялась при изменении размера окна. Обычно я бы использовал
<html>
<body onresize="resizeFunction();">
</body>
</html>
Но в SharePoint все становится запутанным. У меня есть функция onload
, которую я могу использовать следующим образом:
_spBodyOnLoadFunctionNames.push('myFunctionName');
И это выполняется в событии onLoad
. Есть ли что-то подобное для событий onResize
?
2 ответа
Вы можете рассмотреть возможность использования внешней библиотеки javascript, такой как jQuery или прототип и т. д.
Например, в jQuery вы можете попробовать (непроверенный код!!)
$("window").bind("resize", "myFunctionName");
Документы jQuery: http://docs.jquery.com/Events/bind
Информация об использовании jQuery в SharePoint: http://weblogs.asp.net/jan/archive/2008/11/20/sharepoint-2007-and-jquery-1.aspx
РЕДАКТИРОВАТЬ: Если вы не хотите использовать внешнюю библиотеку, при загрузке документа запустите функцию, которая прикрепляет другую функцию к событию изменения размера. Что-то типа:
_spBodyOnLoadFunctionNames.push(function() {
window.onresize = function() {
/* resize code here */
}});
Конечно, вы можете использовать именованные функции.
РЕДАКТИРОВАТЬ 2: определение ваших событий, как указано выше (window.onresize =), подходит только для одного события. Таким образом, если несколько обработчиков событий указаны одинаково для одного и того же события на одной и той же странице, тот из них, который указан последним, «выигрывает». "Правильный" способ сделать это - присоединить обработчик событий, и самый простой способ сделать это - через библиотеку, поскольку они прозрачно обрабатывают межбраузерные различия.
$(window).resize(function(){
alert("Ya its workingggg") ;
});
Похожие вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript/JS) и его различных диалектах/реализациях (кроме ActionScript). Имейте в виду, что JavaScript — это НЕ то же самое, что Java! Включите все ярлыки, относящиеся к вашему вопросу; например, [node.js], [jQuery], [JSON], [ReactJS], [angular], [ember.js], [vue.js], [typescript], [svelte] и т. д.