質問するログイン新規登録

質問編集履歴

2

追記依頼対応

2018/01/31 04:38

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -26,4 +26,40 @@
26
26
  var getEleInText = $(".wrap *").filter(function(){
27
27
  return $(this).text()!==""&&$(this).children().not("br").length==0;
28
28
  });
29
- ```
29
+ ```
30
+
31
+
32
+
33
+ ### 以下追記
34
+
35
+ ・過去の質問 [https://teratail.com/questions/111194](https://teratail.com/questions/111194)
36
+
37
+ > yambejp 様
38
+
39
+ 下記のように、要素に複数のテキストが入っている場合、そのテキストごとに取得をし、
40
+ 要素直下にテキストが入っていない場合、その要素は取得したくない と考えております。
41
+
42
+ ```ここに言語を入力
43
+ <p>テキスト<!--取得したい-->
44
+ <span>テキスト</span><!--取得したい-->
45
+ </p>
46
+
47
+ <dl><!--取得したくない-->
48
+ <dt><!--取得したくない-->
49
+ <h3>テキスト</h3><!--取得したい-->
50
+ </dt>
51
+ <dd><!--取得したくない-->
52
+ <p>テキスト<!--取得したい-->
53
+ <span>テキスト</span><!--取得したい-->
54
+ </p>
55
+ </dd>
56
+ </dl>
57
+ ```
58
+
59
+
60
+
61
+ > kei344 様
62
+
63
+ 最終的に「ブックマークレットでjsを実行してcssの記述を書き出す」の理由ですが、
64
+ コーディング時、psd等のカンプのテキストとフォントサイズやテキストカラーが合っているかの確認する作業の工数削減が最終的な目的です。
65
+ 検証ツールで要素を一つづつ確認するのではなく、一気に確認出来るようにしたいと思っています。

1

誤字等修正

2018/01/31 04:38

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  先日、こちらでテキストが入っている要素を取得する方法をご教授頂いたのですが、その方法だとテキストが入っている要素にbrタグが入っていたり、<p>テキスト<span>テキスト</span></p>のような要素の状態だと取得出来ないことに気づきました。
6
6
 
7
- これらの問題を解決するために、childeren()で子要素を指定する時にbrタグやspanタグ除外ようと思いnot()を使いbrは除外することができました。
7
+ これらの問題を解決するために、childeren()で子要素を指定する時にnot()でbrタグを指定たら、brタグが入っている場合でも取得することが出来ました。
8
8
 
9
9
  しかし、<外の要素>テキスト<中の要素>テキスト</中の要素></外の要素>のような場合はパターンが無限にあるのでnot()では対応出来ないことに気づきました...
10
10
 
@@ -12,10 +12,18 @@
12
12
 
13
13
  使用言語:jQuery バージョン1.11.2
14
14
 
15
- ### 該当のソースコード
15
+ ### ご教授頂いたソースコード
16
16
 
17
17
  ```ここに言語名を入力
18
18
  var getEleInText = $(".wrap *").filter(function(){
19
+ return $(this).text()!==""&&$(this).children().length==0;
20
+ });
21
+ ```
22
+
23
+ ### brを除外したソースコード
24
+
25
+ ```ここに言語名を入力
26
+ var getEleInText = $(".wrap *").filter(function(){
19
27
  return $(this).text()!==""&&$(this).children().not("br").length==0;
20
28
  });
21
29
  ```