Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.03.2014, 11:09
Новичок на форуме
Отправить личное сообщение для jgunchenko Посмотреть профиль Найти все сообщения от jgunchenko
 
Регистрация: 10.09.2013
Сообщений: 7

Поиск элемента по стилю
Здравствуйте, коллеги.
Поставили мне вроде простую задачу: Выделение цветом основной задачи в списке задач в Sharepoint 2013. Вроде легко, нашел класс\ид и задал css свойство с помощью хоть того же jquery. Однако выяснилось, что у всех элементов одни и те же классы, а ид задаются по не очень понятному принципу. Поковырявшись через панель разработчика, я заметил что "родительские" задачи отличаются свойством margin:0px;. Появилась идея, что можно попробовать отловить эти элементы через поиск по свойству. Скажите, можно ли это как-нибудь реализовать и как?
P.S. Знаю, что решение очень костыльное, но тем не менее хоть так.


HTML элемента основной задачи
<tr class=" ms-itmHoverEnabled ms-itmhover" oncontextmenu="return ShowCallOutOrECBWrapper(this, event, true)" iid="4,1,0" id="4,1,0" setedgeborder="true">
	<td class="ms-cellStyleNonEditable ms-vb-itmcbx ms-vb-imgFirstCell" tabindex="0"><div role="checkbox" class="s4-itm-cbx s4-itm-imgCbx" tabindex="-1" title="test"><span class="s4-itm-imgCbx-inner"><span class="ms-selectitem-span"><img class="ms-selectitem-icon" alt="" src="/_layouts/15/images/spcommon.png?rev=23"></span></span></div></td>
	<td class="ms-cellstyle ms-vb2"><div class="ms-chkmark-container"><div class="ms-chkmark-container-centerer"><span class="ms-cui-img-16by16 ms-cui-img-cont-float" unselectable="on" style="z-index:0"><img id="4,1,chk" liid="1" shouldanimate="1" lid="{3A4B8481-F3DD-4E51-B56E-C68EFEC1F141}" tabindex="0" title="Пометить задачу как завершенную." class="js-chkmark ms-chkmark-notcomplete" src="/_layouts/15/images/spcommon.png?rev=23" unselectable="on" hascheckmarkhandler="1"></span></div></div></td>
	<td class="ms-cellstyle ms-vb-title" isecb="TRUE" iscallout="TRUE" height="100%">
		<div class="ms-vb  itx" ctxname="ctx4" id="1" app=""><span style="font-weight: bold;float: left; margin-left:0px"><table><tbody><tr style="font-weight: bold;"> 
			<td style="vertical-align: top;"><span id="idExpandCollapse4,1,0" class="ms-commentcollapse-iconouter"><img src="/_layouts/15/images/spcommon.png?rev=23" class="ms-commentcollapse-icon"></span></td>
			<td><a class="ms-listlink" onfocus="OnLink(this)" href="http://dev6/_layouts/15/listform.aspx?PageType=4&amp;ListId=%7B3A4B8481%2DF3DD%2D4E51%2DB56E%2DC68EFEC1F141%7D&amp;ID=1&amp;ContentTypeID=0x010800B5A296E4B47982468A8789A9F0BB5AF8" onclick="EditLink2(this,4);return false;" target="_self">test</a>
			</td></tr></tbody></table></span>
		</div>
	</td>
	<td class="ms-list-itemLink-td ms-cellstyle">
		<div class="ms-list-itemLink  " onclick="ShowMenuForTrOuter(this,event, true); return false;"><a ms-jsgrid-click-passthrough="true" class="ms-lstItmLinkAnchor ms-ellipsis-a" title="Открыть меню" onclick="OpenCalloutAndSelectItem(this, event, this, '1'); return false;" href="#" id="ctx4_1_calloutLaunchPoint"><img class="ms-ellipsis-icon" src="/_layouts/15/images/spcommon.png?rev=23" alt="Открыть меню"></a>
		</div>
	</td>
	<td class="ms-cellstyle ms-vb2"><span class="ms-noWrap" title=""></span></td>
	<td class="ms-vb-lastCell ms-cellstyle ms-vb-user ms-vb-lastCell"></td>
</tr>



HTML элемента подзадачи
<tr class="ms-alternating  ms-itmHoverEnabled ms-itmhover" oncontextmenu="return ShowCallOutOrECBWrapper(this, event, true)" iid="4,8,0" id="4,8,0" setedgeborder="true">
	<td class="ms-cellStyleNonEditable ms-vb-itmcbx ms-vb-imgFirstCell" tabindex="0">
		<div role="checkbox" class="s4-itm-cbx s4-itm-imgCbx" tabindex="-1" title="45y64tre"><span class="s4-itm-imgCbx-inner"><span class="ms-selectitem-span"><img class="ms-selectitem-icon" alt="" src="/_layouts/15/images/spcommon.png?rev=23"></span></span>
		</div>
	</td>
	<td class="ms-cellstyle ms-vb2">
		<div class="ms-chkmark-container">
			<div class="ms-chkmark-container-centerer"><span class="ms-cui-img-16by16 ms-cui-img-cont-float" unselectable="on" style="z-index:0"><img id="4,8,chk" liid="8" shouldanimate="1" lid="{3A4B8481-F3DD-4E51-B56E-C68EFEC1F141}" tabindex="0" title="Пометить задачу как завершенную." class="js-chkmark ms-chkmark-notcomplete" src="/_layouts/15/images/spcommon.png?rev=23" unselectable="on" hascheckmarkhandler="1"></span>
			</div>
		</div>
	</td>
	<td class="ms-cellstyle ms-vb-title" isecb="TRUE" iscallout="TRUE" height="100%">
		<div class="ms-vb  itx" ctxname="ctx4" id="8" app=""><span style="float: left; margin-left:35px">
			<table>
				<tbody>
					<tr>
						<td><a class="ms-listlink" onfocus="OnLink(this)" href="http://dev6/_layouts/15/listform.aspx?PageType=4&amp;ListId=%7B3A4B8481%2DF3DD%2D4E51%2DB56E%2DC68EFEC1F141%7D&amp;ID=8&amp;ContentTypeID=0x010800B5A296E4B47982468A8789A9F0BB5AF8" onclick="EditLink2(this,4);return false;" target="_self">45y64tre</a><span class="ms-newdocument-iconouter"><img class="ms-newdocument-icon" src="/_layouts/15/images/spcommon.png?rev=23" alt="новый" title="новый"></span>
						</td>
					</tr>
				</tbody>
			</table></span>
		</div></td>
		<td class="ms-list-itemLink-td ms-cellstyle">
			<div class="ms-list-itemLink  " onclick="ShowMenuForTrOuter(this,event, true); return false;"><a ms-jsgrid-click-passthrough="true" class="ms-lstItmLinkAnchor ms-ellipsis-a" title="Открыть меню" onclick="OpenCalloutAndSelectItem(this, event, this, '8'); return false;" href="#" id="ctx4_8_calloutLaunchPoint"><img class="ms-ellipsis-icon" src="/_layouts/15/images/spcommon.png?rev=23" alt="Открыть меню"></a>
			</div>
		</td>
		<td class="ms-cellstyle ms-vb2"><span class="ms-noWrap" title=""></span></td>
		<td class="ms-vb-lastCell ms-cellstyle ms-vb-user ms-vb-lastCell"></td>
	</tr>

Последний раз редактировалось jgunchenko, 12.03.2014 в 11:51.
Ответить с цитированием
  #2 (permalink)  
Старый 12.03.2014, 11:27
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

приведите html код
Ответить с цитированием
  #3 (permalink)  
Старый 12.03.2014, 11:41
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,500

Если исключительно
<elem style="margin:0px;">...</elem>
и ничего боле в style нет, то можно просто по селектору:
elem[style="margin:0px;"] > .class
.
Но скорее всего у id'шников таки есть логика, которая где-нить описана.)

P.S. С любым обновлением такой селектор может отвалиться, если например поменяется style="margin:0px;" на style="margin:0%;". Там тоже есть варианты, но сё это не надёжно.)
__________________
29375, 35

Последний раз редактировалось Aetae, 12.03.2014 в 11:44.
Ответить с цитированием
  #4 (permalink)  
Старый 12.03.2014, 11:52
Новичок на форуме
Отправить личное сообщение для jgunchenko Посмотреть профиль Найти все сообщения от jgunchenko
 
Регистрация: 10.09.2013
Сообщений: 7

привел
Ответить с цитированием
  #5 (permalink)  
Старый 12.03.2014, 12:51
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

ужос какой-то) а чё искать то нужно?
возможно искомые элементы по счёту на определённом месте, или как Aetae предложил
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск элемента по классу shaltay jQuery 5 20.01.2013 18:38
Поиск по стилю kidar2 jQuery 15 10.04.2010 08:38
Поиск элемента в IE !? Andrei Общие вопросы Javascript 3 20.11.2009 14:03
Поиск элемента по id coryphaeus Events/DOM/Window 16 17.11.2009 17:35
поиск элемента magavnuk Events/DOM/Window 10 14.07.2009 20:40