 
			
				13.02.2019, 17:15
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 02.02.2019 
					
					
					
						Сообщений: 67
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				как добавить одно из свойств стиля, которое содержиться в массиве
			 
			
		
		
		
		В плагине создана переменная, которая содержит ассоциативный массив данных в виде объекта и затем устанавливается 
в параметрах по умолчаниию.
 
/*атибуты стиля тега 'th'*/
        var styleAttributesForTh = {
            'border': 'solid 1px green',
            'padding': '5px',
            'width': 'auto',
            'font-size': '20px',
            'font-style': 'italic'
 
        };
 
        * arrTh - массив заголовков*/
        var options = $.extend({
 
            selectorForCreateElemInto: 'body',
            classTableName: nameTable,
            classTableHeadName: nameTableHead,
            classTableBodyName: nameTableBody,
 
            arrTh: [],/*['id', 'имя', 'возраст', 'login']*/
            arrDataAttrName: [], /*[ {'data-dataType': 'dateType'}, {data-dataType': 'nameType','data-maxLength': '7',}]*/
            styleForTable: styleAttributesForTable,
            styleForTh: styleAttributesForTh,
            styleForTd: styleAttributesForTd
 
        }, prop);
Но при вызове плагина, хотелось бы менять лишь некоторые параметры из этого массива, например вот так
 
$(document).ready(function () {
 
    var selector = '.tableEmployees';
    $(selector).createTablePlugin({
 
 
        styleForTh: {'font-size': '15px'},
 
.....
ну и  добавлять новые стили в этот массив .... 
Но так не работает. 
А как можно сделать, чтобы заработало ?  
		
	
		
		
		
		
		
		
	
		
			
			
	
			
			
			
			
			
				 
			
			
			
			
			
			
				
			
			
			
		 
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				13.02.2019, 17:29
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		alex-romanov,
  
/*атибуты стиля тега 'th'*/
        var styleAttributesForTh = {
            'border': 'solid 1px green',
            'padding': '5px',
            'width': 'auto',
            'font-size': '20px',
            'font-style': 'italic'
        };
        prop.styleForTh = $.extend({}, styleAttributesForTh, prop.styleForTh);
        /* arrTh - массив заголовков*/
        var options = $.extend({
            selectorForCreateElemInto: 'body',
            classTableName: nameTable,
            classTableHeadName: nameTableHead,
            classTableBodyName: nameTableBody,
            arrTh: [],/*['id', 'имя', 'возраст', 'login']*/
            arrDataAttrName: [], /*[ {'data-dataType': 'dateType'}, {data-dataType': 'nameType','data-maxLength': '7',}]*/
            styleForTable: styleAttributesForTable,
           //styleForTh: styleAttributesForTh,
            styleForTd: styleAttributesForTd
        }, prop);
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				15.02.2019, 18:16
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 02.02.2019 
					
					
					
						Сообщений: 67
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		а как передается параметр при вызове. 
Поясните пожалуйста
 
prop.styleForTh = $.extend({}, styleAttributesForTh, prop.styleForTh);
$(document).ready(function () {
	    var selector = '.tableEmployees';
	    $(selector).createTablePlugin({
...
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				15.02.2019, 19:05
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		alex-romanov,
  
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8" />
<style type="text/css">
</style>
<script src="https://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$.fn.plugin = function (prop) {
        /*атибуты стиля тега 'th'*/
        var styleAttributesForTh = {
            'border': 'solid 1px green',
            'padding': '5px',
            'width': 'auto',
            'font-size': '20px',
            'font-style': 'italic'
        };
        /* arrTh - массив заголовков*/
        var options = $.extend({
             selectorForCreateElemInto: 'body'
        }, prop);
        options.styleForTh = $.extend({}, styleAttributesForTh, options.styleForTh);
        return this.each(function (index, self) {
        $(self).css(options.styleForTh)
    })
}
</script>
<script type="text/javascript">
$(window).load(function(){
$(".box").plugin({
     styleForTh : {
         border : 'solid 5px red'
     }
});
$(".too").plugin();
});
</script>
  <title></title>
</head>
<body>
<button class="box">is box</button>
<div class="too">is too</div>
</body>
</html>
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				15.02.2019, 23:36
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 02.02.2019 
					
					
					
						Сообщений: 67
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		я сделал так, как вы показали в примере 
$(selector).createTablePlugin({
       
 styleForTh: {
            border: 'solid 5px red'
        },
.....
В плагине у меня для таблицы несколько стилей
 
/*атибуты стиля тега 'table'*/
        var styleAttributesForTable = {};
        /*атибуты стиля тега 'th'*/
        var styleAttributesForTh = { };
        /*атибуты стиля тега 'td'*/
        var styleAttributesForTd = { };
        /*Параметры по умолчанию:
        * selectorForCreateElemInto - указываем селектор контейнера, внутри которого создается
        * элемент;
        * arrTh - массив заголовков*/
        var options = $.extend({
 
            styleForTable: styleAttributesForTable,
            styleForTh: styleAttributesForTh,
            styleForTd: styleAttributesForTd,
        }, prop);
        options.styleForTh = $.extend({}, styleAttributesForTh, options.styleForTh);
/*применить настройки по умолчанию*/
        function applySettingsDefault() {
            /*Стили для таблицы*/
            styleAttributesForTable = {
                'border': "solid 2px blue",
                'border-collapse': 'collapse', /*убираем расстояние между ячейками*/
                'margin-top': '2%',
                'padding-top': '2%',
                'margin-left': '2%',
                'margin-bottom': '2%',
                'margin-right': '10%',
                'height': '40%',
                'width': '100%',
                'background-color': '#FFFFE0',
                'cellspacing': '0'
            };
            /*атибуты стиля тега 'th'*/
              styleAttributesForTh = {
                 'border': 'solid 1px green',
                  'padding': '5px',
                  'width': 'auto',
                  'font-size': '18px',
                  'font-style': 'italic'
            };
            /*атибуты стиля тега 'td'*/
             styleAttributesForTd = {
                 'border': 'solid 1px purple',
                  'width': 'auto',
                  'font-size': '15px'
            };
        }
но когда я в точке вызова плагина указываю изменения одного из стилей заголовка, то все остальные стили отменяются, а применяется только
 
$(selector).createTablePlugin({
        styleForTh: {
            border: 'solid 5px red'
        },
...
 
		
	
		
		
		
		
		
		
	
		
			
			
	
			
			
			
			
			
				 
			
			
			
			
			
			
				
			
			
			
		 
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 |  
  |