Задать размер изображения по высоте - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

СвернутьПрикрепленные теги

Теги не найдены

Страница 1 из 1

Задать размер изображения по высоте

#1 Пользователь не на сайте   Fantik ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 57
  • Регистрация: 06-Февраль 17
  • Репутация: 2
  • IPB version:3.4.x
 

Отправлено 12 Май 2018 - 10:02

Как задать размер изображения по высоте, с сохранением пропорций?
Поле не активное
Вложение  Размер изображения высота.jpg (53,61К)
Количество загрузок: 9
А то сделали крайне не продумано, если вставить к примеру 3 разных фотографии имеющих разную высоту и выставить для них к примеру 300 пикселей ширину, то в итоге получается всё криво.
Если же выставить 300 высоту для всех, то всё будет ровно
0

#2 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 3 168
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 309
  • IPB version:I have no IPB
 

Отправлено 12 Май 2018 - 12:25

Вообще там все завязано на ширине. И в дб записывается style="width:123px;height:auto;"
0

#3 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 3 168
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 309
  • IPB version:I have no IPB
 

Отправлено 12 Май 2018 - 13:36

Можно в бд в таблице core_javascript найти ips.editor.image.js (SELECT * FROM `core_javascript` WHERE javascript_name='ips.editor.image.js') и отредактировать содержимое столбца javascript_content
Закомментировать
this.scope.find('[data-role="imageHeight"]').prop('disabled', true);

и
this.scope.find('[data-role="imageHeight"]').prop('disabled', sameRatio);


Далее сбросить кеш форума.
0

#4 Пользователь не на сайте   Fantik ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 57
  • Регистрация: 06-Февраль 17
  • Репутация: 2
  • IPB version:3.4.x
 

Отправлено 12 Май 2018 - 21:06

что-то я накосячил кажется
/**
 * Invision Community
 * (c) Invision Power Services, Inc. - https://www.invisioncommunity.com
 *
 * ips.editor.image.js - Controller for image properties in editor
 *
 * Author: Mark Wade
 */
;( function($, _, undefined){
	"use strict";

	ips.controller.register('core.global.editor.image', {
		
		_typingTimer: null,
		_textTypingTimer: null,
		_ajaxObj: null,
		_imageWidth: null,
		_ratioWidth: 1,
		_ratioHeight: 1,
		
		initialize: function () {
			this.on( 'submit', 'form', this.formSubmit );
			this.on( 'change', '[data-role="imageHeight"]', this.changeHeight );
			this.on( 'change', '[data-role="imageWidth"]', this.changeWidth );
			this.on( 'click', 'label[for^="image_align"]', this.toggleAlign );
			this.on( 'change', 'input[name="image_aspect_ratio"]', this.toggleRatio );
			this.setup();
		},

		/**
		 * Setup
		 *
		 * @returns 	{void}
		 */
		setup: function () {
			this._ratioWidth = this.scope.attr('data-imageWidthRatio');
			this._ratioHeight = this.scope.attr('data-imageHeightRatio');

			if( this.scope.find('input[name="image_aspect_ratio"]').is(':checked') ){
/**
			*	this.scope.find('[data-role="imageHeight"]').prop('disabled', true);
*/
			}
		},

		/**
		 * Toggles between the alighment options, highlighting the one the user clicked
		 *
		 * @param 		{event} 	e 		Event object
		 * @returns 	{void}
		 */
		toggleAlign: function (e) {
			var thisLabel = $( e.currentTarget );
			this.scope.find('label[for^="image_align"]').removeClass('ipsButton_primary').addClass('ipsButton_light');
			thisLabel.removeClass('ipsButton_light').addClass('ipsButton_primary');
		},

		/**
		 * Event handler for toggling the 'preserve aspect ratio' option
		 *
		 * @param 		{event} 	e 		Event object
		 * @returns 	{void}
		 */
		toggleRatio: function (e) {
			var sameRatio = $( e.currentTarget ).is(':checked');

			if( sameRatio ){
				this.changeWidth();
			}
/**
			* this.scope.find('[data-role="imageHeight"]').prop('disabled', sameRatio);
*/
		},

		/**
		 * Event handler for changing the height
		 * Keeps the width in ratio if enabled
		 *
		 * @returns 	{void}
		 */
		changeHeight: function () {
			var sameRatio = this.scope.find('input[name="image_aspect_ratio"]').is(':checked');
			var thisVal = parseInt( this.scope.find('[data-role="imageHeight"]').val() );
			var width = this.scope.find('[data-role="imageWidth"]');
			var widthVal = parseInt( width.val() );

			if( sameRatio ){
				width.val( Math.ceil( thisVal * this._ratioWidth ) );
			}
		},

		/**
		 * Event handler for changing the width
		 * Keeps the height in ratio if enabled
		 *
		 * @returns 	{void}
		 */
		changeWidth: function () {
			var sameRatio = this.scope.find('input[name="image_aspect_ratio"]').is(':checked');
			var thisVal = parseInt( this.scope.find('[data-role="imageWidth"]').val() );
			var height = this.scope.find('[data-role="imageHeight"]');
			var heightVal = parseInt( height.val() );

			if( sameRatio ){
				height.val( Math.ceil( thisVal * this._ratioHeight ) );
			}
		},

		/**
		 * Event handler for submitting the form
		 *
		 * @param 		{event} 	e 		Event object
		 * @returns 	{void}
		 */
		formSubmit: function (e) {
			e.preventDefault();
			e.stopPropagation();
			this._updateImage(e);
		},

		/**
		 * Event handler for 'insert' url button
		 *
		 * @param 		{event} 	e 		Event object
		 * @returns 	{void}
		 */
		_updateImage: function (e) {
			
			var widthInput = this.scope.find('[data-role="imageWidth"]');
			var heightInput = this.scope.find('[data-role="imageHeight"]');
			var sameRatio = this.scope.find('input[name="image_aspect_ratio"]').is(':checked');
			var error = false;

			if ( parseInt( widthInput.val() ) > parseInt( widthInput.attr('max') ) ) {
				error = true;
				widthInput.closest('.ipsFieldRow').addClass('ipsFieldRow_error');
				this.scope.find('[data-role="imageSizeWarning"]').text( ips.getString( 'editorImageMaxWidth', { 'maxwidth': widthInput.attr('max') } ) );
			}
			if ( parseInt( heightInput.val() ) > parseInt( heightInput.attr('max') ) ) {
				error = true;
				widthInput.closest('.ipsFieldRow').addClass('ipsFieldRow_error');
				this.scope.find('[data-role="imageSizeWarning"]').text( ips.getString( 'editorImageMaxHeight', { 'maxheight': heightInput.attr('max') } ) );
			}
			
			if ( !error ) {								
				var editor = $( 'textarea[name="' + $( this.scope ).data('editorid') + '"]' ).closest('[data-ipsEditor]').data('_editor');				
				editor.updateImage( widthInput.val(), ( sameRatio ? 'auto' : heightInput.val() ), this.scope.find('[data-role="imageAlign"]:checked').val(), this.scope.find('[data-role="imageLink"]').val(), this.scope.find('[data-role="imageAlt"]').val() );
								
				this.trigger('closeDialog');
			}
		}
	});
}(jQuery, _));


Поле стало активным, но если меняю высоту или ширину, то в соседнем поле ничего не изменяется пропорционально

Сообщение изменено: Fantik (12 Май 2018 - 21:26)

0

#5 Пользователь не на сайте   Fantik ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 57
  • Регистрация: 06-Февраль 17
  • Репутация: 2
  • IPB version:3.4.x
 

Отправлено 12 Май 2018 - 21:19

*

Сообщение изменено: Fantik (12 Май 2018 - 21:21)

0

#6 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 3 168
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 309
  • IPB version:I have no IPB
 

Отправлено 13 Май 2018 - 08:27

Просмотреть сообщениеFantik сказал(а):

Поле стало активным, но если меняю высоту или ширину, то в соседнем поле ничего не изменяется пропорционально

А галка установлена?
0

#7 Пользователь не на сайте   DarthOld ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 151
  • Регистрация: 26-Февраль 15
  • Репутация: 3
  • IPB version:3.4.x
 

Отправлено 23 Май 2018 - 17:48

А как в 4.3. задать что бы автоматом ужимались фото и картинки в сообщениях до 650 допустим?
0

#8 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 3 168
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 309
  • IPB version:I have no IPB
 

Отправлено 24 Май 2018 - 09:40

Просмотреть сообщениеDarthOld сказал(а):

А как в 4.3. задать что бы автоматом ужимались фото и картинки в сообщениях до 650 допустим?


В АЦ есть настройка "Maximum image dimensions to display"
1

#9 Пользователь не на сайте   DarthOld ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 151
  • Регистрация: 26-Февраль 15
  • Репутация: 3
  • IPB version:3.4.x
 

Отправлено 24 Май 2018 - 10:28

А где примерно? уже все глаза сломал...
0

#10 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 3 168
  • Регистрация: 26-Октябрь 11
  • Репутация: 1 309
  • IPB version:I have no IPB
 

Отправлено 24 Май 2018 - 10:34

В АЦ же есть поиск или ссылка на страницу с настройками admin/?adsess=utuqc12ll6mmrewda82i8ddh55&app=core&module=settings&controller=posting
0

#11 Пользователь не на сайте   DarthOld ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 151
  • Регистрация: 26-Февраль 15
  • Репутация: 3
  • IPB version:3.4.x
 

Отправлено 24 Май 2018 - 11:10

Понял. Думал там только для загружаемых изображений. У меня загрузка отключена. А вот с внешних урл - вот это надо. Пробую.
0

Сообщить об этой теме:


Страница 1 из 1


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2018 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна