Отвечая на запрос Дэвида Туита, чтобы ответить на первую часть вопроса, вы можете настроить функцию для ответа на «измененное» событие, а затем вызвать пользовательское событие, если свойство, которое вы хотите игнорировать, не изменилось.
Эта логика вызовет пользовательское событие: 'somePropertyOtherThanThePropIWantToExcludeChanged'
, если свойство не было изменено. Если было изменено несколько свойств, в том числе того, которое вы хотите игнорировать, пользовательское событие также НЕ будет запускаться:
model.bind('change', function(){
if( !model.hasChanged('propIWantToExclude') ){
model.trigger('somePropertyOtherThanThePropIWantToExcludeChanged');
}
});